work on schema
Initial pass at schema support.
Tests pass but only the public schema is tested.