Tidied up the main script file and started thinking about the structure of the "Course" class
Added an example non core module and and example course definition
While this doesnt do anything at the moment I have cleaned up
a few functions making them clearer and more concise, I have also
included more indepth comments for these functions.

I have also started structuring things in a way that should work
well with courses
Fixed a JSON syntax error
Courses are now a thing, it can automatically arrange the modules on screen and handle an arbitrary number of them
Merge branch 'courses'