Fix handling of Hive timestamp in maps/lists

Hive timestamp was serialized as a string when it was in a map/list, but
as a bigint when it was a primitive. This makes it always be serialized
as a bigint of seconds.
Also, add more unit tests for RCFile formats
Add bootstrapped aggregation
Use custom block in bootstrapping to generate poissonized blocks
Add null checks to create*Block

Make the errors more explicit for calls like this, which do not do what the caller expects due to varargs semantics in Java:

  createStringsBlock(null)

Also, remove the @Nullable annotation as it's ambiguous: does it refer to the varargs parameter or to each of the varargs elements.
Upgrade to commons-math 3.2
Poissonized Sampling With Replacement
Change SampleOperator to use sample weight framework
Fix materialization of rows with zero sample weight
Fix warnings in AbstractTestQueries
Add support for rescaled poissonized sampling
Add SQL documentation
Rename analyzer.approximate-queries-enabled

Change name of config flag to analyzer.experimental-syntax-enabled,
since it's used to gate more than just approximate queries (rescaled
sampling)
Add JDBC feature DatabaseMetaData.getColumns
Change test query logging to include h2 time
Add index to h2 on custkey

Makes test suite almost twice as fast
Make testSampledRightOuterJoin() more obviously correct

Fix typo in expected query for testSampledRightOuterJoin() to use a
RIGHT join instead of a LEFT join
Fix logging for Hive connectors

Without this exclusion, SLF4J uses logback inside the plugin which
causes anything using the SLF4J API to log to stdout.
Implement VALUES
Add more details to time logging in test queries
Update to airbase 16