Changed my mind again. Moving to Java 8. Fixes #25
When creating a PDF, allowed the calling code to specify a user agent. This also removes the PDF module dependency on the default user agent module.
Lots more use of Optional.
More type safety and faster class splitting thanks to @ebruchez