beginnings of user-creation api
forbid post if the user already exists
refactor module layout, and add better validation and error reporting to user module