added code for getting randomly from any of the datastore items and to
check whether a username already exists.
Added more methods to User model to make usage more convenient.
Webapp now uses name combinator to fetch a name. Uniqueness is checked.

issues: on close is generally okay, but depends on browser behaviour.
Failsafe's in place but unideal