Refactor require-tree to not share messages

- Pass in messages to each method so they are not shared
- Export each method for calling individually
- Update reference to default export of require-tree
- Add default values for messages if not passed in
Update link to clean up history in contributing.md

Fixes #2296
Also replaces line endings, not sure why (tried with all the settings,
git would just not have it)
Add plugin icons to Apps menu item in Ghost settings

closes #2290
- added css entry in settings.scss for to display plugin icon for apps menu item
- remove unused css entry for .plugins in settings.scss
Merge pull request #2295 from seanhellwig/issue2290

Add plugin icons to Apps menu item in Ghost settings
Merge pull request #2297 from javorszky/iss2296

Update link to clean up history in contributing.md
Fixing typo in allowedSections for allowed pages under settings
Merge pull request #2311 from stenehall/master

Fixing typo in allowedSections for allowed pages under settings
Prevent settings page from rendering same page twice

Closes #2316
- There was a check to prevent rerendering of same content pane but it wasn't working
- Fixed the check for this
Shifts app UI behind config option

Closes #2287
- adds helper for checking whether to show apps UI or not
- hides app UI from settings page
Detect tag.hbs template in themes

closes #2320
- changed detection from "tag" to "tag.hbs" in "frontend.js" contrroller
Use tag as title on tag pages

closes #2328
- added check for tag in coreHelpers.meta_title and use if set
- added test for correct title on tag pages

Rewritting to tag - blogtitle based on comments from PR
Merge pull request #2329 from stenehall/master

Fix for #2328 - Added check for tag for title
Merge pull request #2317 from shashankmehta/settings-rendering-issue

Prevent settings page from rendering same page twice
Merge pull request #2292 from jgable/requireTree

Refactor require-tree to not share messages and export parsePackageJson
Add test for tag.hbs template.

refs #2321
Replace JSLint with JSHint.

closes #2277
- Added ES6 linting to core/client/
- Fix typeof array comparison
Merge pull request #2278 from halfdan/jshint-es6

Replace JSLint with JSHint.
Switch to bower for client assets.

fixes #2272
- Remove libraries from shared/vendor
- Remove libraries from client/assets/vendor
- Add bower to package.json and postinstall
- Add bower.json with dependencies
- Add scripts from bower_components to concat/uglify
- Fix tests
- Serve jquery from /ghost/built/theme/
Merge pull request #2326 from halfdan/bower

Switch to bower for client assets.
Merge pull request #2294 from shashankmehta/apps-config

Shifts app UI behind config option