Allow `this` (global scope) to be null during module initialization

This is in preparation for ES6ifying things at some point.
Merge pull request #3846 from joliss/this

Allow `this` (global scope) to be null during module initialization
Come back test for `Ember.inspect`

This test was lost on #3883 .
Merge pull request #3895 from tricknotes/test-for-ember-inspect

Come back test for `Ember.inspect`
[BUGFIX Beta] Makes sure you can't use unregistered helpers in templates
Add support for min & max on HTML 5 inputs

This will allow support of the min & max attributes on the `number` and
`range` input types from HTML5.
Merge pull request #3898 from bcardarella/bc-min-max-for-inputs

Add support for min & max on HTML 5 inputs
Merge pull request #3897 from twokul/missing-helper-message

[BUGFIX Beta] Makes sure you can't use unregistered helpers in templates
[NICETHING beta] assert `needs` incompatibility with periods

needs isn't compatible with periods, because ultimately
you're going to need to call get('controllers.foo.bar')
(assuming needs: 'foo.bar'), which doesn't and can't
do what you want.
[BUGFIX beta] New error stack trace

Related [#67](https://github.com/tildeio/router.js/pull/67).
Merge pull request #3876 from twokul/relevant-stack-trace

[BUGFIX Beta] New error stack trace
Merge pull request #3899 from machty/needs-warning

[NICETHING beta] assert `needs` incompatibility with periods
[BUGFIX beta] sync router.js

Fixes #3810
[BUGFIX beta] make routePath smarter w/ stacked resource names

Logging will make more sense when stack route resource
names are used.

Fixes #3853
[NICETHING beta] use Ember.inspect in debugger helper

Followup to

40a1d50dc1db7d528edeb5bc35332279aca8ac09

should have used this in the first place.