huge refactor, add all models and DAO, still need to twitch bugFix, and bugFix refactoring