everything passing (though tests could be more robust).  Need to finish up the ddl part.