Responder 2

Adds a responder class and moves stuff like content negotiation out of the controller. The old `respond` method is still in the controller -- thinking it might be best to deprecate that as `respondTo` and `respondWith` cover all the bases, and it's going to be confusing as the responder also has a `respond` method that the strategies use.

Still needs a way for users to define their own strategies, but figured I should get some feedback before I keep going.