Cluster: manual failover initial implementation.
Cluster: force AUTH ACK on manual failover.

When a slave requests masters vote for a manual failover, the
REQUEST_AUTH message is flagged in a special way in order to force the
masters to give the authorization even if the master is not marked as
failing.
Cluster: check that a MF is in progress in manualFailoverCheckTimeout().

Otherwise it is always detected as a manual failover timed out.
Cluster: CLUSTER FAILOVER replies with OK and logs the event.
Cluster: fixed MF condition in clusterHandleSlaveFailover().

For manual failover we need a manual failover in progress, and that
mf_can_start is true (master offset received and matched).
Check for EAGAIN in sendBulkToSlave().

Sometime an osx master with a Linux server over a slow link caused
a strange error where osx called the writable function for
the socket but actually apparently there was no room in the socket
buffer to accept the write: write(2) call returned an EAGAIN error,
that was not checked, so we considered write(2) == 0 always as a connection
reset, which was unfortunate since the bulk transfer has to start again.

Also more errors are logged with the WARNING level in the same code path
now.