Added JavaDoc comments to static generation of `Message`, `Request`,
`Response`, `MessageFormatter` and `FunctionProvider`, as well as to dynamic generation of FunctionProviders.

Now throwing `UnsupportedOperationException`s in generated subclasses
instead of returning null.
Added protected sections to generated `FunctionProvider`s , moving
example implementation to implemented classes rather than code template.

refs #10, #25
Generated implementations from changes made to code templates in SHA: 1c386b4ce55ab9ef6e5ad5a170927a7b378021f9
refs #10, #25