Merge branch 'release/0.16'
Merge tag '0.16' into develop

Major overhaul of internal structures

The most important change is that there is a generic statement now.
A statement is a variadic template with the clauses as template arguments.
This makes it very easy to add features to statements, e.g. to mimic specific dialects.

Removed namespace vendor.

Removed direct support for char-based results. This was rather vendor specific and
is therefore to be implemented by the connector libraries, if required.

Lots of smaller changes and corrections.