Add account locked explanation mail

Users are locking their accounts by entering the passphrase
incorrectly and are then unable to sign in not realising their accounts
have been locked.
This allows us to send an email explaining that their account
has been temporarily locked, stating when the account will be unlocked.
Send an explanatory email when account is locked.

Using sidekiq to deliver mails asynchronously.
Merge pull request #279 from alphagov/email_locked_account_info

Send locked account explanation email
Upgrade to ruby 2.1.4

To keep up to date etc.
Clean-up: Handle email blacklisted by AWS in model

this special case handles an exception raised when AWS
has black-listed an email address, and we try sending
a password reset instruction email to it.

User model is the better place to handle this, which
ensures that we don't have to modify the #create in
PasswordsController.

was:
https://github.com/alphagov/signonotron2/commit/451b89d9
Merge pull request #281 from alphagov/bump_ruby

Upgrade to ruby 2.1.4
Use `assert_difference` in place of count variable.
Merge pull request #280 from alphagov/email_locked_account_info

Use `assert_difference` in place of count variable.
Require client_id in /user.json endpoint

This makes this parameter mandatory when an application is asking signon for
information about a user trying to authenticate to it.

Follow up to 6e33fd1eff8b01a4478ba9cc6e3ac54676147683

This change means that Signon will always check that the token the user has
supplied is for the application making the request, rather than another
application.
Disallow reset password for a suspended user

www.agileplannerapp.com/boards/173808/cards/5250

and notify them that reset password is disallowed
because their account is suspended.
Merge pull request #283 from alphagov/suspended-account-trying-password-reset

Disallow reset password for suspended user
Ruby 2 compatible whenever gem version

whenever's dependency chronic's older version
was not ruby 2.x compatible.
Merge pull request #284 from alphagov/update-whenever-and-co

Use ruby 2 compatible whenever gem version
Merge pull request #282 from alphagov/remove_deprecated_authentication_behaviour

Require client_id in /user.json endpoint
Corrected HTML template for mailer

www.agileplannerapp.com/boards/173808/cards/5250

the notification to suspended users trying to reset
their password was missing some HTML formatting.

also, changed the Devise::Recoverable overridden
send_reset_password_instructions method to return
the user in each case, because the controller
expects that.
Merge pull request #285 from alphagov/send-reset-password-email-updates

Corrected HTML template for mailer