Better test cases for user API

In brief, the current test cases don't test anything except that the server is running and does respond to requests. Moreover, the API is inconsistent and incomplete.

I created a couple of test cases on the user API to illustrate a more consistent and complete approach using the user API as an example.
What happens if we request a user not known to us? Correct server response would be 404, but still using JSON content type. Response body should be something like this:

```
{
  "error": {
    "status": "404", 
    "message": "no such user"
  }
}