Add some hooks to JdbcMappingCompilerComponent.

This makes it easier to change the mappings in driver implementations.
OracleDriver needs to hook into the mapping compiler now to work around
Oracle't strange NULL string handling because the Option handling logic
moved from JdbcType into ResultConverter.
Merge pull request #770 from slick/tmp/mapping-compiler-hooks

Add some hooks to JdbcMappingCompilerComponent.
Don't patch type changes from OptionApply in hoistClientOps.

Patching the types was wrong and only worked for view columns, where the
wrong type is equivalent to the correct one, and for computed values,
where the wrong type is not used at all. It failed for LiteralNodes. The
solution is to leave OptionApply intact in hoistClientOps and ignore it
in QueryBuilder.

Test in MainTest.test. Fixes issue #771.
Merge pull request #772 from slick/tmp/issue-771

Don't patch type changes from OptionApply in hoistClientOps.