Added a Document Object

Added the document object and added tests for it. This will make it
easier if at some later time, we need to have documents other than PDF.
For example generating a .png for a quick display in a web app.
Merge pull request #25 from slabounty/pull_out_document_object_23

Added a Document Object