Add PluginFactory

The PluginFactory looks for plugin files defined in
/lib/smartdown_plugins which correspond to a flow
slug. The idea is to be able to only include plugins
needed for a given flow.
Plugins automatically loaded and applied to flows

This wires in the PluginFactory. Plugins can now be
defined in /lib/smartdown_plugins. Plugin files should
be named after the applicable flow (with .rb) and should
implement a module (doesn't matter if namespaced) with
the same name again. Any singleton methods on that module
will become plugins.
Update SPL plugins to use new plugin format

and fix some test issues.
Undo response-period id change
Merge pull request #1147 from alphagov/add-plugin-factory

Add plugin factory - plugins specific for each flow