Merge Index & Query with TransportAware.

Index & Query now require a Transport in their constructors, and do no
longer accept a Transport in Query::execute() & Index::flush().

Due to this change, QueryBuilder can no longer generate queries by
itself. Passing a Query in the constructor is now mandatory.

searchtest\index::testFailingTransport() has been removed because it
does no longer is possible to write to another transport when the
original fails.
Index may always clear removed & uploaded documents.

Since failing over to another transport is no longer possible, the
removed & uploaded documents do not have to be stored, even when a
transport failure occurs.