Add clients provisioning feature

The clients provisioning feature will allow create clients to be used on
tests that needs another machine to consume some content.

Also this improve the ssh module to allow specify the machine where to
run a command. Improved logging to show what machine the command was
executed (inspired by Fabric).

Finally was added tests for the new robotello.vm module and properly
added entries for added modules in the docs.
> By setting the attr on a instance that will be used for that instance only:

Seems very useful, no? What if I want two VMs on two separate provisioning servers?

> Also the use of get will ensure that even the config is not available it will not break during the import time:

Right. I missed that.

> The decision to use a class attr was because I don't wanna get the config every time a instance is created.

I don't think that reading the config each time an instance is created is bad in any way.

* The config file is stored locally, so there is a low cost to fetching data from it.
* The config dict you're reading from caches values, anyway.