[FEATURE with-controller]: {{#with}} can take a controller= option

Wrap the context for with in an Ember.ObjectController

@stefanpenner and I discussed this feature already. Similar to `{{#each}}` where you can pass the `itemController` for each of the collection member models to be wrapped this PR will do the same but for `{{#with}}`.

I need this for `ember-easyForm`. I plan on adding support for a `{{#fieldsFor relation}}`` helper that will take the block. The helper will check to see if the relation is an array. If it is it will call `{{#each}}` and attempt to attach an `itemController` automatically. This way `ember-validations` can be used to assign validations to that controller instead of on the model thus avoiding the need for global validations. This PR would allow me to add support for singular relationships.