This looks awesome! Managing the data access layer is one of my least favorite dev tasks.

How are permissions handled? Our shop tends to set permissions at the proc/view level with no direct access to the tables.

Looking forward to playing with this stuff!