Moved login call to controller to get rid of unnecessary database call
Added logging
Fixed Javadoc
Prepared for language selection functionality
Optimized code
Removed unnecessary parameters
Optimized code
Added backend logic for changing display language
Updated to use method forLanguageTag() instead of constructor and
comparing strings directly with explanation