Refactor routing and implement all endpoints for User

Close #8