WIP user refactor