Add DOFMap output class

As described in #4155 this output module dumps the degrees-of-freedom map in JSON format to a file and/or the screen. JSON is a widely supported text based serialization format. 

Besides the raw DOF data I'm also outputting active kernels for every subdomain (names and type names!). 
My demangle implementation has a fallback that removes leading digits (which can never be parts of a valid class name).