Alter handler protocol to use objects

With request methods instead of bare request closures.
This will allow us to alter the implementation to avoid closures and
recycle objects if necessary in the future.
Prototype all the request methods
Merge pull request #3 from uber/methodical

Alter handler protocol to use objects