Add ServiceErrorJsonProtocol

Add ServiceErrorJsonProtocol, change conversion between String and
ServiceError to use the implicit json format.
Add test for insert Group with non-existing parent

This test asserts that an exception is thrown.
Remove import, change matcher

Remove unused import. Change specs2 matcher to be more idiomatic.
Change directive authorize to validate

By using validate a custom error message can be properly be returned.
Make user member of group that he creates

When the createGroup service is called a group is created by the user and
the user automatically becomes a member of the group.
Add tests for GroupService#createGroup

The following features are tested:
* "reject requests with no credentials" in e1
* "reject users with invalid credentials" in e2
* "reject requests with missing form fields" in e3
* "reject requests with invalid Privacy values" in e4
* "reject users who try to create child groups of groups they aren't members of" in e5
* "create a global group if the given information is valid" in e6
* "create a child group if the given information is valid" in e7