move auth to its own file
add dependencies