added auth methods and some models