Adding ReStructured Text preprocessing of exercise descriptions, so that the markup for exercises is the same as for the tutorials.
www/apps/tutorial/rst.py * cut down version of NLTK rst.py, which extends docutils with colourised python codeblocks * modified to work with strings rather than files
www/apps/tutorial/__init__.py * call rst() main function on exercise description once it is extracted from the source XML file
www/apps/tutorialservice/test/TestFramework.py * clean up docstring
www/apps/tutorialservice/test/parse_exercise.py * remove backwards compatibility for desc attribute (now authors must provide both pass and fail strings)