Refactoring the DAL to be more generic. but the app is broken now. need to figure out why.