Sentinel: always send CONFIG REWRITE when changing instance role.

This change makes Sentinel less fragile about a number of failure modes.

This commit also fixes a different bug as a side effect, SLAVEOF command
was sent multiple times without incrementing the pending commands count.
Sentinel: increment pending_commands counter in two more places.

AUTH and SCRIPT KILL were sent without incrementing the pending commands
counter. Clearly this needs some kind of wrapper doing it for the caller
in order to be less bug prone.
Sentinel: sentinelSendSlaveOf() was missing a var and the prototype.
Merge branch 'unstable' of github.com:/antirez/redis into unstable
redis-trib: fixed slot allocation when --replicas is used.
Fix broken rdbWriteRaw() return value check in rdb.c.

Thanks to @PhoneLi for reporting.
Cluster: refactoring of slots update code and more.

The commit also introduces detection of nodes publishing not updated
configuration. More work in progress to send an UPDATE packet to inform
of the config change.
Cluster: UPDATE msg data structure and sending function.
Cluster: slots update refactored + UPDATE msg processing.

Now there is a function that handles the update of the local slot
configuration every time we have some new info about a node and its set
of served slots and configEpoch.

Moreoever the UPDATE packets are now processed when received (it was a
work in progress in the previous commit).
Cluster: replace hardcoded 4096 for bus msg len with sizeof().
Cluster: send a single UPDATE packet for now.
Cluster: removed not needed newline at end of redisLog() msg.