Start refactoring Work out of User

Missing tests, testing to follow.