Honor schema in SQL query (Issue #931)

Or: Eating the same half of the pie twice

The issue was that even though the table expression has the correct schema the SQL generation was not using it.
Fix #906: Some queries in MonsterFixupTest throw InvalidCastException

Problem: Nullable enums were not being handled correctly in EntityMaterializerSource and EntityQueryModelVisitor.
Solution: Centralize logic for ReadValue expression creation. Add support for enums.