Resorted stuff into a core again.  Added database abstraction, started transaction abstraction.