Finish moving all data types to schematics

Big refactor, all tests check out, and integration testing (ie: running
it live) seems to work fine.