Adds a directive for namespaces.

This commit adds a directive to include namespaces very similar to the
already existing `doxygengroup` directive. The directive is also added
to documentation.
Fix up documentation for namespace directive

Improved to remove the empty note and add the required target for the
namespace link from the directives page.
Update rebased directive for RenderContext

It was written prior to the RenderContext introduction and rebased.
Rename namespacefile project to 'namespace'

As the 'file' part is an unnecessary extra which breaks the trend with
other example projects.
Fix doxygengroup documentation

It seems I completely failed to proofread the copy and paste of examples
from the class docs to the group docs. Fixed up here. Fortunately
everything seems to work still.
Refactor doxygen namespace & group implementations

They are so close in purpose and implementation that we combine them
into common methods and base classes with minimal specialisation for
each case.
Improve namespace documentation

By copying over the group docs and changing them appropriately.
Acknowledge rweickelt's contribution

Thanks for writing the doxygennamespace directive.
Merge branch 'doxygennamespace'