implement a new RPC codec for ProtoRPC

_Filling a new pull request since github automatically closed [the previous one](https://github.com/gorilla/rpc/pull/3)._

Based on the JSON-RPC transport, it differs in that it uses HTTP as its envelope.

*Example:*
~~~
POST /Service.Method
{
  "requestField1": "value1",
  "requestField2": "value2",
}
~~~
~~~
{
  "responseField1": "value1",
  "responseField2": "value2",
}
~~~