### Login
POST http://localhost:8080/login HTTP/1.1
Content-Type: application/json

{
  "username": "admin",
  "password": "admin"
}

### Create a new user
POST http://localhost:8080/user HTTP/1.1
Content-Type: application/json

{
  "givenName": "Bruce",
  "familyName": "Wayne",
  "username": "bat",
  "password": "1234"
}

### Get all users
GET http://localhost:8080/users HTTP/1.1

### Get specific user
GET http://localhost:8080/user/1 HTTP/1.1

### Update specific user
PUT http://localhost:8080/user/1 HTTP/1.1
Content-Type: application/json

{
  "givenName": "Selina",
  "familyName": "Kyle"
}

### Delete specific user
DELETE  http://localhost:8080/user/1 HTTP/1.1

### Logout
POST http://localhost:8080/logout HTTP/1.1