fixing primary key issue for now
a ton more changes to tons of things, getting close
got most things working other than async logic in tests