Adds more documentation to the code. Some of it still needs more commenting (such as the Lexer)
Added IExtensionPlugin reset functionality. Improved documentation. Improved error handling for plugins.
Merge branch 'master' into jordan/plugins

Conflicts:
	MathsThing_GUI/src/uk/ac/uea/mathsthing/gui/GUI.java