DRY up Observer registries for remaining formats
Update phantomjs gem

On mavericks the phantomjs gem cannot find new
versions of homebrew installed phantomjs binaries.
Later versions of the phantomjs gem install their own into
/Users/:user/.phantomjs.

This will fix this error
"Phantomjs does not appear to be installed in
/Users/:user/.phantomjs/1.9.7/darwin/bin/phantomjs, installing!"
Merge pull request #316 from alphagov/techdebt/update-phantomjs

Update phantomjs gem
Merge pull request #315 from alphagov/refactor/dry-observer-registries

DRY up Observer registries for remaining formats
Update gds-api-adapters

In order to make use of the new email-alert-api adapters
Use tags in the PublicationAlertFormatters

In order to use the new email alert APi we must send over
a set of tags instead of simple unique identifier. This
commit makes the formatter respond to tags instead of
identifier.
EmailAlertExporter uses email alert API interface

Make the EmailAlertExporter use the email-alert-api
interface instead of the gouk_delivery interface.
This interface expects to be passed a hash including a list
of tags instead of an identifier and includes the title and
subject included previously.
Make the observers use the email_alert_api

The EmailAlertExporter no longer uses the delivery_api so
instead we now inject the email_alert_api from the wiring.
Replace delivery_api cukes with email_alert cukes

Stop testing for requests to the delivery api and instead
replace them with tests for the email alert api
Make sure to send all tags as arrays

The email alert api accepts tag values as arrays (even if
they are not arrayed values), so lets use the formatter in
order to arrayify all values before exporting over HTTP.