Deprecate before observers

Also remove usages of public `addBeforeObserver` in ember internals.
Added asserts for reserved route/resource names
[BUGFIX] Allow Ember.Select to have selection from a Promise
when multiple=false
Use `appendView`
Merge pull request #9696 from twokul/view-tests

Use `appendView`
Ensure HTMLBars files are labeled for the correct module.
Merge pull request #9698 from rwjblue/htmlbars-docs-modules

Ensure HTMLBars files are labeled for the correct module.
Add deprecation for old usages of cachable and readOnly in CPs

* Passing opts.cacheable to the constructor of ComputedProperty is deprecated
* Passing opts.readOnly to the constructor of ComputedProperty is deprecated
* Invoking `cacheable` in a computed property is preprecated.
* Invoking `readOnly` with aany params in a computed property is deprecated.
* Make InjectedProperty inherit `readOnly` from CPs prototype
Update out-of-date JSDoc; rename parameter '_path'
Moves `{{view}}` tests
[Bugfix beta] this isn’t observable, and turns out its costly.
Introduce __defineNonEnumerable hook, this allows parts of ember to opt-out of the enumerable safety. Unfortunately at this time there is not way to create fast non-enumerable properties. Historically ember has this to allow people to merge, extend and JSON.stringify. Unfortunately some things like Ember.Views should do not need this but still suffer from the pretty hefty overhead.

This PR Reduces the cost of view allocation by 300% -> 400%.

Micro bench (creating 10,000 views):

before: 120ms
after:   35ms
Merge pull request #9701 from stefanpenner/cleanup-views

[Bugfix beta] this isn’t observable, and turns out its costly.
[Bugfix beta] shape Meta
Merge pull request #9703 from emberjs/shape-meta

[Bugfix beta] shape Meta
Merge pull request #9700 from oneeman/update-jsdocs-and-rename-param

Update out-of-date JSDoc, rename parameter '_path'
Merge pull request #9699 from twokul/move-view-tests

Moves `{{view}}` tests
Changes test name to use underscores
Merge pull request #9705 from twokul/rename-test

Changes test name to use underscores
Remove lingering templateData