Models refactor
Controllers refactor