Add format and mount volume capability

If a cinder volume is created for a trove instance, in order to
use it for /var/lib/mysql (or any directory specified in the config)
it requires the agent to format and mount the volume to the specfied
path.

Formatting and mounting of volume occurs within the "prepare" message
handler.

This feature can be enabled with the 'volume_format_and_mount' flag.
Merge pull request #4 from jcru/mount_volume_final

Add format and mount volume capability
Created header to easily make new daemons.

This commit extracts stuff from the receiver_daemon.cc file
into a header which should make it easier to create daemons
for other datastore types.
Merge pull request #3 from TimSimpsonR/multi-datastores

Created header to easily make new daemons.
updating rackspace-monitoring-agent api call

This adds a method from an RPC call to allow a monitoring agent to be update
to the latest version. This is a trivial change that just issues an
'apt-get install rackspace-monitoring-agent' to install the latest version.
Merge pull request #5 from cp16net/update-monitoring-agent-api-call

updating rackspace-monitoring-agent api call
Adds ResilientSender class and Conductor driver

Corrects spelling of "Resilent" to "Resilient" where applicable.
Guest Agent now uses Conductor to update status, instead of db connection.
Instead of backup_id, backup_info is passed to agent.
send_to_conductor will send a message to conductor on the host.
With this commit the host database requirement is not yet removed.
Use conductor to send backup update

BackupInfo is a struct now
Changed backup conductor messages to streams
adding some tests and more drivers

running resrec and ressend through the grinder
intermediate
blergh
turbo works