Merge pull request #9 from Farsyte/development

Fix up parallel builds
Update to latest.
Expand Documentation.

  - Set up README.md as a Doxygen Mainpage
  - Add doxygen comments to testing.h

Also noted in passing while doing this:

  - when printing an Oops in the destructor,
    need to add "<< endl" to assure the message ends
    with a newline and is flushed to the output.
Fix #15: massive build rules rewrite

Rather than using "make -C ..." to iterate down the tree,
just include "**/*.mak" from the top level GNUmakefile.

This allows much more flexible presentation and resolution
of dependencies.