Fix initialization order problem in generated code
Merge pull request #677 from slick/tmp/fix-codegen-init-order

Fix initialization order problem in generated code
Support casts to boolean and double in Access.

Fixes failing test AggregateTest.testGroupBy.
Merge pull request #681 from slick/tmp/access-casts

Support casts to boolean and double in Access.
Add documentation for `into` method
Merge pull request #687 from slick/tmp/into-docs

Add documentation for `into` method
Add JDBC interop docs
Emulate empty join conditions where needed.

Appending the dummy condition "on 1=1" works almost everywhere, except
in Access, where the condition has to reference columns from both sides
of the join, so we have to thread the dummy "1" values through the
sub-queries.

Fixes Typesafe support ticket 3140.
Test in JoinTest.testNoJoinCondition.
Modify DDL to run drop phases in LIFO order.  Fixes issue #701.
Merge pull request #702 from LannyRipple/ddl-lifo-drop

Modify DDL to run drop phases in LIFO order.  Fixes issue #701.
Fixed issue #554 (ZIP joins)
Merge pull request #708 from Radsaggi/tmp/issue554

Fixed issue #554 (ZIP joins)
Fixed issue #698 (MappedColumnType broken for Char)
Add test for broken mapping to Char
Merge pull request #712 from Radsaggi/tmp/issue698

Fixed issue #698 (MappedColumnType broken for Char)
Simplify Invokers

- Remove parameterized Invokers. They hugely complicate the API
  (overloads for UnitInvoker; some UnitInvoker methods require
  parens, others forbid them) and the implementation.

- The Lifted Embedding did not expose parameterized Invokers anymore
  since 2.0. With this change, the distinction between QueryInvoker,
  UnitQueryInvoker and MutatingUnitInvoker (for applied compiled
  queries) goes away.

- Adapt StaticQuery to the new model. The API stays mostly compatible.
  StaticQuery is now only a builder for the query, the actual execution
  is done by a new StaticQueryInvoker. Parameterized StaticQuery objects
  have to be applied first to get the Invoker. For compatibility with
  the old API, there is an implicit conversion for StaticQueries with
  Unit parameters.
Simplify Option handling in JdbcProfile.

- Remove the useless TypeInfo abstraction in BasicProfile. It is not
  needed at this level. Sub-profiles should have more flexibility for
  implementing types.

- Represent only base types with JdbcType, not Option types. JDBC is
  based on optionally nullable base types. Making this more explicit in
  the handling of Option columns should simplify the implementation of
  more efficient "fast path" mapping converters in the future.

- JdbcType.nullable is no longer needed.
Remove zero values from ScalaType.

We used them as default values in MemoryDriver but this is not necessary
for compatibility with SQL databases. Inserting into a row without an
explicit value or an explicit default defined in the schema is always
equivalent to inserting NULL. On a real database it leads to a
constraint violation if the column in question is not nullable. With
this change, MemoryDriver also uses null as the default for all data
types. Constraints are not enforced (in any scenario in MemoryDriver).
Merge pull request #700 from slick/tmp/support-3140

Emulate empty join conditions where needed.
Merge pull request #694 from slick/tmp/simplify-invokers

Some cleanup work