Ensures email alert is only sent once to the Email Alert API

* In order to prevent the unlikely-but-possible case where a message is delivered multiple times
on the queue for a single change to a piece of content, we set a key in
Redis with an agreed expiry time of three months.
If a lock key exists for a message, the Email Alert API is not notified.
To allow number of requeued messages to be tracked we are logging when a lock exists when trying to add a new message.
The setting of the key and the expiry have been moved into a redis atomic execution to make sure
we do not have a lock set without an expiration under any circumstance.
Merge pull request #19 from alphagov/ensure-email-is-only-sent-once

Ensures email alert is only sent once to the Email Alert API