remove unused query attribute in SelectAnalysis

and also replaces deprecated Objects.firstNonNull with
MoreObjects.firstNonNull
fixed information schema reporting wrong data type

of arrays inside multiple nested objects
move attributes from AbstractStatementAnalyzer to classes where they're actually used
added section about lexical syntax to documentation
remove unused BindingRewritingTraversal
rename Analysis to AnalyzedStatement
execute DDL statements using Planner/Executor
remove rowCount from TaskResult interface.

Tasks will now always write the rowCount into the rows and
there is only one place where the extraction of the rowCount
is done (in the transport where the SQLResponse is built).
Add OrderBy object to encapsulate symbols / flags during analysis.
fix routing for delete by query and count(*) statements

by providing custom transport actions that interpret the routing parameter as a single opaque value
and perform no splitting
Merge pull request #1384 from crate/m/no_comma_routing

fix routing for delete by query and count(*) statements
update es upstream to current no-comma-routing fix
prevent thread leaks due to deallocator prestarting threads
add AnalyzedRelation interface and RelationVisitor

Used in the Planner and InsertFromQuery case to do
dispatching to SelectAnalyzedStatement.

For now the AnalyzedRelation is just a marker interface
until more Relations are added.
fixup! add AnalyzedRelation interface and RelationVisitor
fixed null insert into array as first bulk argument
Merge pull request #1390 from crate/h/multiargs-array-fix

fixed null insert into array as first bulk argument
increase timeout for discovery and don't set routing enable settings
update es upstream to fix graceful stop behaviour
Merge pull request #1393 from crate/m/graceful_stop_fix

M/graceful stop fix