reindex_search: refactoring and improvements
* properly handle when the index/alias don't yet exist
* don't lose content updates made while reindex/rebuild are in progress
* when possible, use tire api's reindex call for much more efficient index changes
* expose rake tasks to explicitly rebuild or reindex individual types