code: func NewUserHandler() *UserHandler {
  	h := &UserHandler{
  		Router: NewRouter(),
  	}
  
  	h.HandlerFunc("POST", usersPath, h.handlePostUser)
  	h.HandlerFunc("GET", usersPath, h.handleGetUsers)
  	h.HandlerFunc("GET", usersIDPath, h.handleGetUser)
  	h.HandlerFunc("GET", usersLogPath, h.handleGetUserLog)
  	h.HandlerFunc("PATCH", usersIDPath, h.handlePatchUser)
  	h.HandlerFunc("DELETE", usersIDPath, h.handleDeleteUser)
  	h.HandlerFunc("PUT", usersPasswordPath, h.handlePutUserPassword)
  
  	h.HandlerFunc("GET", mePath, h.handleGetMe)
  	h.HandlerFunc("PUT", mePasswordPath, h.handlePutUserPassword)
  
  	return h
  }
docs: // NewUserHandler returns a new instance of UserHandler.