Object

`Object` is almost an entire port of `Controller`. Ideally, we should be able to add enhancements to both once Object lands. I think @thejameskyle has some ideas for things we can add for Object. As for Controller, it will get some goodness over the course of 2.x.
WIIIIIIIILLLLLLLLLCCCCCCCOOOOOOOOOOOOOOOOOOOO!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

![cast_away_wilson_face](https://cloud.githubusercontent.com/assets/952783/3371335/0692d7e6-fb9f-11e3-814f-5e9d478cbf6d.jpg)