Allow the use of += and ++= for more complex inserts in JdbcProfile.

The standard mutable collection operators += and ++= were introduced
earlier for RelationalProfile and JdbcProfile already supported them.
However, they always returned Unit, so you couldn't use them for
returning primary keys from insert operations. This change makes the
return types flexible. It is left abstract in RelationalProfile (so you
can't use the return value when programming against RelationalProfile)
and still refined to Unit in MemoryProfile, but JdbcProfile uses the
types that were previously available for insert and insertAll so that
+= and ++= are now aliases of these methods.
Use the ++ operator for unionAll.

Since the default for SQL queries is to allow multiple occurences of
rows and this is well represented in Slick by using Seq as the default
type constructor in lifted.Query, the standard ++ operator for Scala
collections should be mapped to unionAll. Later, when we add support
for other collection types, the semantics will depend on the collection
type and we can remove the separate union and unionAll methods.
Merge pull request #177 from slick/tmp/api-improvements

Bring the API closer to Scala collection syntax