WIP refactor user service