Update config.theme() after every settings edit

fixes #1645

- removes server.get('ghost root') as it is only an alias
to config.paths().path, and adds unnecessary indirection
- removes config.theme().path as its just an alias to
config.paths().path, updated all relevant references
- update config.theme.update to only require the api/settings object,
and no longer need the config object
- modify api/settings.edit to call config.theme.update so that
the themeObject is ready for next rendering of template
Fixed admin 404 page broken image refrence
Standardize file path access throughout ghost

resolves #1390

update all string based references to file paths
to use the ./core/server/config/paths file
so that it is the single source of truth
Merge pull request #1651 from hswolff/issue-1645

Update config.theme() after every settings edit
Merge pull request #1662 from PaulAdamDavis/master

Fixed admin 404 page broken image refrence
CSS and layout fixes for image uploader

closes #1673
- dropzone icon doesn't appear when filestorage is false
- proper cursor and no selection on icon
- cleaned up some sass
Merge pull request #1674 from ErisDS/css-fixes

CSS and layout fixes for image uploader
Improve Helpers

closes #1640
closes #1672
- changed to include config using require
- deleted has_tag helper
- deleted json helper
- removed fileStorage and ghostScriptTags helpers from frontend
- added fileStorage and url helper to admin
Add Force SSL Configuration/Middleware

Solves #1300
- Adds forceAdminSSL bool config value
- Adds checkSSL middleware
- Adds redirectSSL helper function
Merge pull request #1542 from pmgarman/ssl
Bug fixes, undefined should not be a string
Merge pull request #1675 from sebgie/issue#1640

Improve Helpers
Merge pull request #1636 from hswolff/standardize-path-access

Standardize file path access throughout ghost
CasperJS waitForOpaque fails more gracefully