Move search indexing from delayed job to sidekiq

As well as creating a new sidekiq-compatible workers to perform search
indexing and deleting of whitehall models, this also introduces a new
interface for that hides the background-jobiness of the actions, i.e.
the Whitehall::SearchIndex.add and delete methods. This reduces the
number of integration points for search indexing and hides the
mechanism by which we index away from the client code.