Security fixes for the services and the GWT interface. Minor other enhancements.

Security fixes:
- Now it is required for a user to be authenticated to access any method in services.py . Move unnecessary service method helpers to websutil.py. Currently, anyone (without being logged in) can call services.py/getAllGrades?courseId=<smth> and get all the usernames and all the grades.
- Use POST instead of GET in GWT interface when sending username & password.

Enhancements:
- Fix login form 'enter' not working issue in Firefox (possibly in other browsers too).
- More explicit error messages.
- If the services are not properly installed, an error is returned on the login screen. Until now, the app would just display a white page.