Initial work on the interface.
Adds the OpenGLRawgenBase as dependency
Begins work on the interface types.
Adds the conversion to xml
Adds xml parsing, untested.
Adds simple serialization
Correct the extension of the package to xml.
Use the pretty printer to write files.
Moves ModuleType to base.
Lowers the base dependency
Adds reading xml files.
Changes parsing from Maybe to Either, fix ModuleI

To give error messages (still very primitive) a switch from Maybe
to Either String has been made as parser type. The problem with
parsing the ModuleI was that the moduletype was passed to the
ModuleType parser which it didn't accept.