log search requests

supports "squashing" of search requests, so only the deepest facets the
user searched for will be logged (and also unit tests for the squashing)
log data collection selection
log user filtering
Merge pull request #1408 from aodn/client_log

client log