Refactor the agent to be a little bit more opinionated

Most of these changes are very basic, but slowly we push against the ocean and the ocean molds to our liking. 



hopefully we can continue this trend of removing `bind` calls. Maybe this is too much, but we could begin thinking about putting some more objects in here. I'm thinking of patchBackboneView, which has a lot of callbacks which could live in a function prototype...