Fast deploy

Some re-factoring done on the mobile deployment. The API for the deployment remained the same but the structures used by the Mobile Deploy are a little bit more structured now.

The deployment flow is not independent of the deployment way the user choose, which makes it more scable and easy to maintain.
What's the error? Connection closed? It could be that the client is terminating the connection, and our tcp library is returning an error when it should be just closing the stream. It could also be that the client is poorly behaved.