Support for types with non-parameter less constructors in XmlHierarchyConfigurator.cs

The constructor parameters are taken from the corresponding values of
the child nodes.

You can add for instance

     <standardunit type="Amazon.CloudWatch.StandardUnit">
          <value value="Kilobytes"/>
     </standardunit>

where StandardUnit has only one constructor that has a string parameter
named "value".

To see why this is beneficial, see my [CloudWatchAppender](https://github.com/camitz/CloudWatchAppender/tree/StandardUnit-in-config) where I recently added support for the third party type above in config only to run into this obstacle.

The changes are actually quite few, affecting some 50 lines. I don't know how to make git ignore white space changes.