Use promises at startup

Refactored the js code in index.html.tmpl and app.js to use promises
instead of the custom JobManager object.
Modify PluginInterface to use promises on server
Use promise version of PluginInterface on the client
Simplify the settings generator

settingsgenerator.js:
* getSettings' callback now passes an error object as its first argument
* generateSettings now returns a Promise

httphandler.js:
* serveSettings will now respond with HTTP 500 (Internal Server Error) if
    there is an error generating the settings object
Update engine.io(-client) to 1.3.1
Update node-static from 0.7.3 to 0.7.4
Update uglify-js from 2.4.12 to 2.4.15
Update eventemitter2 from 0.4.13 to 0.4.14
Update ipaddr.js from 0.1.2 to 0.1.3
Update iconv-lite from 0.2.11 to 0.4.4
Update spdy from 1.19.1 to 1.28.1
Update po2json from 0.2.3 to 0.3.0
Update jQuery from 1.11.0 to 1.11.1
Update backbone from 1.0.0 to 1.1.2
Correctly reading nicks from an IRC message prefix when without ident@host
Adding 'loaded' event to kiwi.events
Cleaner HTTP routing; Support empty http_base_pase configs
web_agent_debugger_update
Jack Allnutt Update engine.io(-client) from 1.3.1 to 1.4.0
Merge pull request #586 from M2Ys4U/dep-update

Update dependencies