Update gateway.searchObjects to use LuceneQueryBuilder

Rather than have 2 implementations of the query parsing
logic, omero.gateway now uses the byLuceneQueryBuilder
method to have the custom query built server-side.
Add useAcquisitionDate param to searchObjects

Now the date query of byLuceneQueryBuilder can be based
on either the import date or the acquisitionDate by setting
the new parameter.
Enable common and model unit tests
Fix 'compile' error in parseTime
adding acquisition date to search form
adding acquisition date to the search result display
Update bin/omero search to use query builder
Refactor ids-only to HqlControl and call super

SearchControl was not properly making use of the HqlControl
_configure method. With this commit, all of the options from
HqlControl are also provided for regular search, including
output style and `--all` for querying across groups.
Set search.results in CLI context
Minor cleanups of search plugin
CLI search plugin integration tests
Fix flake8 errors
Exit prematurely on empty LQB search strings

Some searches like '%' generated empty strings in LQB
which led to invalid query exceptions "<EOF>" etc.
Ignore acquisition strings for non-images
Tweak handling of acquisitionDate

In order to make the choice and use of import v.
acquisition date more natural:

 * import (i.e. creation date) is used by default
 * for non-Image types, import date is used if the
   user requests "acquisitionDate" (server-side)
Fix broken test of marshalling tree in accordance with:
https://trac.openmicroscopy.org.uk/ome/ticket/12474

The test now correctly uses a read-only group and thus also asserts that
the received permissions reflect that
Fix permissions for tree projections

Makes use of a cache to avoid repeated querying

Temporary fix for:
http://trac.openmicroscopy.org.uk/ome/ticket/12474
Fixed bug where project permissions being used in place of dataset
Restored normal permissions parsing in tree

Convert the permission type in the workaround instead
Removed unused import