Added plenty of documentation.
Changed the documentation style and added a dependency to ReportLab.