Moved DBModel out of module so module could import User (which needs DBModel)
Added the authentication module and supporting utilities, which could be organized better