Add independent documentation module

*  Avoid playing games with docutils module w/in environment module.
   Make dedicated module for documentation rendering.
*  Break down classes further into a more managable tree w/ defined
   extension points.
*  Update all docstrings, add many more comments.
*  Update unittests

Signed-off-by: Chris Evich <cevich@redhat.com>