Relax types

Michael, I think this is what you want, it allows application created data-sources to be configured as a "type" underneath a table, column-group or index.

I also put a check at the top-level API to ensure applications don't try and layer LSM on top of anything -- I'm less confident you want that check in there, so it's a separate commit.

Please let me know if I still don't understand this.