[BUGFIX beta] The router should cleanup itself upon destroy.

Prior to this change the router did not cleanup its location object upon
destroy. This caused multiple transitions to be triggered after an
`App.reset()` call.

Resolves #3669.

@twokul / @rjackson
[BUGFIX beta] Correct `Em.typeOf` docs re: boxed types.
Remove unused local var from link_to test
Merge pull request #3710 from balinterdi/remove-unused-snippet-from-link-to-test

Remove unused local var from link_to test
Merge pull request #3708 from hjdivad/doc-typeof

Correct `Em.typeOf` docs re: boxed types.
Merge pull request #3702 from rjackson/router_should_cleanup

[BUGFIX beta] The router should cleanup itself upon destroy.
[FEATURE ember-handlebars-caps-lookup] Use Ember.lookup as context for {{CONSTANT}}. Fixes #3098
[FEATURE reduceComputed-non-array-dependencies] add missing entry in features.json

features.json was missing `reduceComputed-non-array-dependencies`.
Merge pull request #3709 from hjdivad/update-features-json

[FEATURE reduceComputed-non-array-dependencies] add missing entry in features.json
deletes extra space to fix syntax highlighting in API docs
Merge pull request #3719 from twokul/runloop-join-doc-fix

deletes extra space to fix syntax highlighting in API docs
[BUGFIX beta] Remove import statement of Router

Since the router.js sync in cf0caa04f625067ec3b4629acdec12c8517df94e,
a `TransitionAborted` rejection is handled by the router (see
http://git.io/Sf38aQ) so there is no need to re-check for this in
the Ember.Test.adapter#exception handler.
Merge pull request #3704 from pangratz/fix/import_of_router_module

[BUGFIX beta] Fix import of Router module in ember-testing package
[BUGFIX beta]  sort guid fallback unconfused by ObjectProxy.

`Em.computed.sort` uses a guid check as a fallback comparator.  In order to
search for items correctly, it also wraps items on removal in an object proxy to
shadow new values with the previous values.

This proxy needs to be sort-equal to the actual object.  To ensure the guid
fallback check treated the item and the proxy as equal, it had a check
`ObjectProxy.detectInstance`.  This check is obviously deficient in the face of
items that might themselves be `ObjectProxy`s, such as `ObjectController`s when
using `@this` as the base array in an `ArrayController`.

This commit creates a local type of `ObjectProxy`, `SearchProxy`, to avoid this
confusion.

Fix #3720.
Merge pull request #3724 from hjdivad/fix-3720

[BUGFIX beta]  sort guid fallback unconfused by ObjectProxy.
[BUGFIX beta] Close #3502 – Fix issue with templateName in Route and render.
Merge pull request #3727 from abuiles/fix_render_template_in_route

[BUGFIX beta] Close #3502 – Fix issue with templateName in Route and render.
[BUGFIX beta] [fixes #3714] PromiseProxy should merely observe promises.

Uncaught exceptions should likely still propogate.
fixes for yuidoc comments
Merge pull request #3731 from twokul/computed-yuidoc-fixes

fixes for yuidoc comments