Add support for timestamp inequality queries for resource events

This commit adds basic support for timestamp inequality queries
against resource events.  It also add support for the 'and' operator,
which allows you to build date range queries that include both
a start and an end time.
Add basic 'limit' functionality
Docstrings for recently added functions
Add tests for event timestamp queries via HTTP
Add an `event-query-limit` setting, like `resource-query-limit`

This commit adds a setting called `event-query-limit`.  If a
resource event query would return more results than the value
specified by this setting, we bail and return an error.  This
is largely a safeguard against accidental OOMs, and a stop-gap
until we have support for paging results.
Allow override of `event-query-limit` via query parameter

After discussing with Nick and Ruth, we determined that there will
probably be some Burgundy use cases where the PuppetDB-wide
configuration setting for `event-query-limit` may not match up
with the needs of Burgundy.  (e.g., when we add support for
"group by" and filtering the list of returned fields, we should
be able to handle a much larger number or result rows than we
will for the default event query path.

This commit simply allows you to pass in an extra query parameter,
`limit`, which will override the value from the configuration file.
Add acceptance test for basic report timestamp queries
Add documentation for the new event timestamp query functionality
Add support for basic equality queries against reports
Add support for "or" queries against resource events
Add `certname` to output of event queries
Add support for querying events by `certname`
Add tests for 'and' queries
Add support for 'NOT' queries

This commit adds support for (and tests for) 'NOT' queries.

There were a few minor complications due to the fact that SQL treats
NULL specially when used with boolean operations, but the solution
we arrived at seems to work fine for both Postgres and HSQL.
Add regex support for resource event queries
Add `:test-id` field to example report event data

This commit simply adds a field called `:test-id` to the example
test data for reports.  This will allow us to reference individual
events by id during testing, which will make it much easier to validate
query results.
Port event query tests over to use event `:test-id`s

The path I was going down where I was trying to filter the example
events directly in clojure in order to test them against the real
ones returned by the query was starting to seem like more trouble
than it was worth, since the tests had to validate that my logic
was correct in addition to validating that they query results
were correct.  This commit ports the tests over to having explicit,
hard-coded id's for the events from the example data, and they can
simply validate the query response against those rather than trying
to compute them.
Add more tests for different types of compound queries
Port `http.experimental.event` tests over to use `test-id`s

This commit ports the http event query tests over to use the
new `test-id` field in the example report data, rather than
the more complex approach that we were using before.
Add tests for compound event queries via HTTP endpoint