Move code generator into its own subproject

This makes it easy to define different binary compatibility policies
for the code generator (which is only used at compile-time) and the
rest of Slick. The new policy is clarified in the manual and links are
provided to all four scaladoc bundles (slick, slick-testkit,
slick-codegen, slick-extensions).
Merge pull request #869 from slick/tmp/modularize-codegen

Move code generator into its own subproject