Add styling, refactor user auth