Merged in new features in Lhunath's version.
Renamed userName to fullName