Flexible configuration and user authentication

- added flexible configuration by 'dictionaries' with sample implementation for file lookups and sql database lookups
- added user authentication based on extended configuration attributes "auth users" and "secrets"
Hint: SessionStatus.AUTHREQ reads username + password. There should be another SessionStatus to request the username without the password for non-auth'ed transmissions
please override hashCode also, now you may have two objects that are equal but with different hashcodes which won't work well with hash-based collections (http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html#equals(java.lang.Object))