Modified Form Validation

I have modified form validation again to display individual error
messages so that the user will know why their submission is not
going through. I have also validated question, answer, and comments
text editor to make sure they are not empty. The require attribute
does not work with a contenteditable div tag, therefore I check that
the div's text() is not empty.

I have fixed a minor bug when someone clicks on their display name
to access the User Profile and Logout actions, they are redirected
to course page. This has now been fixed, the user is no longer
redirected.

I have splitted the create_user function and the function used
during installation for adding an admin so that I can add a
permission check on the function.

Lastly, I have created a roleService to grab the roles the currently
logged in user can add to populate the create_user drop down menu.