Late-registered components via dasherized HB invocations

**NOTE: don't merge this in til [the defeat of @tboyt](https://github.com/emberjs/ember.js/pull/3324) so we can feature flag this stuff. Posting for feedback for now**

Previously, you couldn't register components without their
templates being on `Ember.TEMPLATES`. Now, any dasherized
handlebars invocation will check to see if a component
or template has been registered under that name, and if so,
render the component. Otherwise, if neither template nor
component are registered on the container, treat the dasherized
HB invocation as a bound property path.