SearchIndex interface extracted from existing SearchIndex impl
Code cleanup
Dependencies moved to new module