Plugin API Refactor: Filter and Theme Helpers

- 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.
- Pass the server to the initPlugins method and move the call from
  ghost.init() to server startup.

This should cover the first 3 checkboxes in #769 for the plugin architecture.