49870917 Initial search implementation

This includes an extension mechanism, a first implementation of search
capability, indexing of searchable text fields for all models, and
unittests to prove the service behaves as expected in this first
iteration.