Added a better MockDb that can execute statements

Currently all executions are no-ops, but it will be rather simple to
yield select results too (to be configured at runtime).
Added some (no-op) statement executions
Added template parameter Db to result_entry
Added prepare_select to MockDb.
Added is_trivial_value_is_null interpretation to assignment
Renamed tvin_wrap to maybe_tvin

Easier to read
Changed NULL handling in results.

If the column or the connector indicates that NULL corresponds to a
trivial value, then the trivial value is returned. Otherwise, an
assert fails or an exception is thrown, depending on the preferences of
the connector.
Added executed select tests
Rewrote type-set operations to look more like free functions
Merge branch 'feature/trivial-value-is-null' into develop