Fix: raise an error if an array is inserted into an objects
field which is not of type array
catch Throwable instead Exception

Otherwise if an AssertionError occurs requests would just
hang and not get sent to the client.
support functions in select-list on queries that do pk lookups

Also made the ESGetTask standalone so it doesn't require an
additional MergeTask.

In addition the plan for insert from query has changed so
that it will always use QueryAndFetch to avoid handler
round-trips.
don't re-write partitioned columns or sys columns to _doc[..]
updated es/upstream to prevent spurious deletion of dangling indices.
updated crash to 0.10.3
fix flaky test
fixed bulk insert into partitioned table
Merge pull request #1303 from crate/h/bulk-insert-parted

fixed bulk insert into partitioned table
id collector expression
Merge pull request #1305 from crate/h/lucene-collector-expr

added _id  collector expression
fixed regexp_matches and regexp_replace

when used in IS (NOT) NULL predicate
and provide error message when regex_matches arguments are of incorrect type
updated and cleaned up deps
change aws-java-sdk to 1.8.7 because since 1.8.8
we ran in timeout issues when using copy to
Merge pull request #1307 from crate/h/regex-hotfix

fixed regexp_matches and regexp_replace
correct alias handling.

we tried to resolve QualifiedNameReference by alias
everywhere but that is only valid in order by and group by.

this fixes:

    select name as n, substr(n, 1, 1)
    -> worked but shouldn't

    select name as n, n as foo
    -> both outputs where the value of "name"

    select tags, tags[1]
    -> tags[1] just used the value of tags ignoring the index access
always use source lookup in genericFunctionQuery

-> where substr(analyzed_text, 1,1) = 'x'

threw GroupByOnArrayUnsupported exception, now it works
correctly using source lookup
write changes entry for 7dcf68b136abfa55d45e5985eb77d5fb42f71d9d
WIP: added docs about safety and liveness guarantees