Addition of Polyglot.js for multi-lang support

This includes a Handlebars helper function 't' which is a wrapper to
Polyglot.t().  More work needs to be done regarding support for
placeholders.
Adding placeholder support for localisation
- Handlebars lib v1.3 added
- Handlebars dev dependency updated
Translation replacements
Implementation of multi-lang support

- Tweaked'lang' routes to allow any languages
- Defaults to 'en' if no language JSON can be found
Merge branch 'Multi-lang_support' of github.com:adaptlearning/adapt_authoring into Multi-lang_support
Removed call to localstorage.setItem()
Removed call to fs.existsSync

Switched this to call fs.exists and reworked app.js to wait for the
language strings to load the first time.
Removed t2() handlebars helper

This is not required.
Merge pull request #306 from adaptlearning/Multi-lang_support

Multi lang support
Several work in progress changes

- Placeholder for 'Add Component' functionality
- Slight tweaking of 'Add Article/Block/Component' styling
- Added underscore-min
- Added jquery.jsoneditor to project
 misc - fixed missing event param in editorMenuLayerView.js
 task/10011

 - refactored contentmanager
 - added ContentPlugin constructor
 - content types now managed as plugins
 task/10011

 - ensure the :type parameter is lowercase for requests to /api/content/:type
 task/10011

 - added function to iterateSiblings to ContentPlugin
 - added sort order update to article plugin
 task/10011

 - rewrote all schema as json schema
 - updated database interface
 - adapted mongoose dml to new database interface
 - using json-schema-mapper for schema import
 task/10011

 - updated clipboard schema
 - deleted unused contentSchema
 task/10011

 - fixed unset "_type" attribute in content
 task/10011

 - added support for referencing plugin schemas
 task/10011

 - article/block now inherit from contentobject
 - contentobject and children now default to max _sortOrder + 1 on insert
 task/10011

 - added cascading delete