Login via username

Added Location and Country to user model

Resolves #29