geo-replication: Use a md5 based unique control path

A hostname fqdn can be of length 255 according to RFC1123
------------------------->
/usr/include/bits/posix1_lim.h:#define _POSIX_HOST_NAME_MAX  255
<-------------------------
On linux this length is 64
------------------------->
/usr/include/bits/local_lim.h:#define HOST_NAME_MAX 64
<-------------------------

When a given hostname is > 45 (characters) - SSH fails with

-------------------------->
"ControlPath too long for Unix domain socket".
<--------------------------

Indicating that the total length of ControlPath which is
on linux should be 108

------------------------->
/usr/include/linux/un.h:#define UNIX_PATH_MAX   108
<-------------------------

This leads to "faulty" geo-replication status.

This patch brings in a new file called manifest which carries
given a geo-rep session some unique information - with which
a unique `md5` is generated in a 32length digest, this ensures
that we don't exceed UNIX_PATH_MAX limitations instead we use
a conservative approach and still be able to provide a unique
socket path.

Change-Id: I3a6a27d605d751a86e7c82eace4561d9b0134fe1
BUG: 990330
Signed-off-by: Harshavardhana <harsha@harshavardhana.net>
Reviewed-on: http://review.gluster.org/5681
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Csaba Henk <csaba@redhat.com>