Index.add raises errors on nested ES errors

Until now, we've assumed that because Elasticsearch returns a 200 OK, then the
changes went in OK. Elasticsearch always returns a 200 OK for bulk indexing,
and instead returns a list of successes/failures.

This change inspects the response and raises an error if there are any errors
in the response.
Gracefully handle BulkIndexFailure in app.rb

Except in dev, bulk indexing is only done in the background, but this is here
for completeness.
Merge pull request #150 from alphagov/indexing_returns_nested_errors

Raise errors when indexing fails