Changes for HDFS-1623 branch.

This change list will be merged into the trunk CHANGES.txt when the HDFS-1623
branch is merged.
------------------------------

HADOOP-7455. HA: Introduce HA Service Protocol Interface. (suresh)

HADOOP-7774. HA: Administrative CLI to control HA daemons. (todd)

HADOOP-7896. HA: if both NNs are in Standby mode, client needs to try failing
back and forth several times with sleeps. (atm)

HADOOP-7922. Improve some logging for client IPC failovers and
StandbyExceptions (todd)

HADOOP-7921. StandbyException should extend IOException (todd)

HADOOP-7928. HA: Client failover policy is incorrectly trying to fail over all
IOExceptions (atm)

HADOOP-7925. Add interface and update CLI to query current state to
HAServiceProtocol (eli via todd)

HADOOP-7932. Make client connection retries on socket time outs configurable.
(Uma Maheswara Rao G via todd)

HADOOP-7924. FailoverController for client-based configuration (eli)

HADOOP-7961. Move HA fencing to common. (eli)

HADOOP-7970. HAServiceProtocol methods must throw IOException.
(Hari Mankude via suresh).

HADOOP-7992. Add ZKClient library to facilitate leader election.
(Bikas Saha via suresh).

HADOOP-7983. HA: failover should be able to pass args to fencers. (eli)

HADOOP-7938. HA: the FailoverController should optionally fence the
active during failover. (eli)

HADOOP-7991. HA: the FailoverController should check the standby is
ready before failing over. (eli)

HADOOP-8038. Add 'ipc.client.connect.max.retries.on.timeouts' entry in
core-default.xml file. (Uma Maheswara Rao G via atm)

HADOOP-8041. Log a warning when a failover is first attempted (todd)

HADOOP-8068. void methods can swallow exceptions when going through failover path (todd)

HADOOP-8116. RetriableCommand is using RetryPolicy incorrectly after HADOOP-7896. (atm)
