some more work on user.clj