add sign in and out, still need to redo roots