Wait for menu to open in editor test

issue #1287

- also contains some misc cleanup
Update node-sqlite3 to v2.1.18

v2.1.18 brings in build fixes so that better errors are reported in the case of a fallback to a source compile + other minor build fixes (so functional code changes) - refs #1269
Node v0.10.x is required (and not > v0.10) - refs #1314
Merge pull request #1320 from springmeyer/master

Update node-sqlite3 to v2.1.18
Merge pull request #1319 from springmeyer/patch-1

Node v0.10.x is required (and not > v0.10) - refs #1314
Plugin API Refactor: Filter and Theme Helpers

issue #769

- Refactor doFilter to allow returning a promise from a filter handler
  and to also return a promise itself
- Move the logic out of the registerThemeHelper calls and into their own methods so
  we could test them in isolation.
- Assign the server to the ghost instance so the initPlugins method can
  get access to it.
Read activePlugins from settings & improve error handling

issue #769

- activePlugins were being read from settings in two different ways, this has been simplified
- error handling has been improved so that plugins do not crash Ghost
- used full error messaging capabilities to make it easier to recover from errors
Merge pull request #931 from jgable/pluginApiChanges
Merge pull request #1323 from ErisDS/test-fixes

Wait for menu to open in editor test