[BUGFIX beta] Ensure that the rootURL is available to location.

The refactoring in #3752 caused the rootURL to not be passed at initialization
time to the location implementation. This change reverses that by injecting
the `router:main` into the newly created location instance.

The tests were also refactored:

* Split HistoryLocation tests out from the router basic tests.
* Ensure that we are testing the right thing in router tests (ensuring
 that the rootURL is available to the location implementation).
* Fixed issue with existing rootURL check that made the test pass
 due to the fact that the default rootURL (`/`) just happens to be the
 rootURL while running the test via `rackup`.

Resolves: https://github.com/emberjs/ember-dev/issues/115