Observable hub proxy

Hi again!
This pull request is aimed to close #2.
First commit extract common client->server part of the proxy.
Second implements ObservableHubProxy server->client part on top of it.
Third is unrelated to the issue but I decided to not create another PR for that to avoid merge conflicts.
If you have any suggestions don't hesitate to tell them.
Thanks.