User context

User context implemented with all related country management, and integrate it in common data class.

Please @schleichardt review.
In Java 8 we should not repeat the Java 6 pattern if(o.isPresent()) o.get.

Use something like 
```
parseCountryCode(countryCodeAsString)
                .ifPresent(countryCode -> changeCountry(countryCode, response(), Play.application().configuration()));
```

I think the behavior is strange if a wrong country is selected because no error is reported to the caller.