more robust service creation

Hi,
    Thank you for writing this great gem. I needed to extend the RPC functionality for my distributed team and thought the code might be more generally useful. The changes I made only extend the functionally you had coded already, so it will not break backward compatibility. Please let me know if you think these changes would be more generally useful. Thanks again for your excellent work -- yours is the clear winner as far as protobuf gems go.

Commit Msg: added more robust service creation with type-safe responses, injected service handlers, and a service registry to faciltate pure-ruby RPC without coupling it to any particular communication strategy (TCPSocket, RabbitMQ, etc) or application architecture.