Subdir support for admin interface

refs #527
Fix several redirects in frontend and admin

refs #527
Content pane update for static pages

fixes #1350

- no concept of published page
Bug fixes for paths / windows & tests

- removed path.join used for urls
- made sure async tests fail/timeout correctly
Test bug fix

- test should use testing config, not development config. If you run the tests whilst also running the dev server, the tests fail.
Improvements to date handling in post settings menu

issue #1350, #1351

- make sure we don't fire save if the date hasn't changed - and removes a few errors
Swapping url.resolve back out
Merge pull request #1577 from halfdan/527-subdir-admin

Fix Admin interface with sub directories
Accept a config filename as an optional parameter to Ghost start-up.

Closes #1110.
- Promotes config-loader from a validator, to the central place where configuration state is held
- Allow config-loader two means to be told of config file to be used:
  - A preferred first argument passed into Ghost
  - A secondary GHOST_CONFIG environmental variable
- Failing to see either of the above passed in, config-loader will continue to use "config.js"
- Config-loader validates the target configuration (unchanged) & then copies that object into it's own exports
- Components needing to read configuration now require config-loader to retrieve the configuration state
- Config file continues to be loaded via require(): this is assumed to be a static json file
Merge pull request #1110 from rektide/feature-config-arg-rebased
More verbose error message for invalid JSON in config.js

if you enter an invalid json object such as:
```
{
server: "http://foo.com"
host: "0.0.0.0"
}
```
while configuring, you get errors but are still able to run forever and the message previously was not as indicative of other potential configuration problems.
Merge  pull request #1225 from enahs/patch-1
This commit removes a lot of code from ghost.js, including:

Move helper functions registerThemeHelper and registerAsyncThemeHelper
to the helpers module.
Also update the app proxy object to reflect this new code location,
and the tests to reflect that as well

Create ./sore/server/filters which houses all filter related behavior.
Was previously on the ghost singleton.
Also create the filters_spec file for testing
and update all code and tests to use new code location.

Create ./sore/server/helpers/template which houses all template related behavior.
Was previously on the ghost singleton.
Also create the helpers_template_spec file for testing
and update all code and tests to use new code location.

Move ghost.mail instance onto the mail module directly
and update related code and tests to use new location

Move Polyglot instance onto require module directly

Move ghost.availablePlugins to plugins module directly