Order bucket drops by date added
Use DisMax queries

* DisMax queries perform the queries across multiple fields
so there's no need to specify the fields to be searched and also
allow boosts to be specified for the search fields - this sets the ground
for clients to fine-tune search via the API
Activate read/write behaviour in activateAccount

* Added a @Transactional annotation to AccountService#activateAccount
with the "readOnly" property set to "true" so that the activation changes
are persisted to the DB
Delete token *after* account update

* The password reset and account activation tokens
should only be deleted after the changes to the account have
been persisted to the DB