Fixing the unit tests

The call to DisposableTimer.DebugDuration() in
ArchetypeValueConverter.ConvertDataToSource() expects the propertyType
parameter to be not null, but the implementation of
ArchetypeValueConverter.ConvertDataToSource() allows the propertyType
parameter to be null. This breaks some of the unit tests.
I've added a null check in the call to DisposableTimer.DebugDuration()
to counter this issue.
Add default value overload to GetValue()

Fix issue #142
Fix code formatting
Fix 'hide property label'
Fix for #160
Merge remote-tracking branch 'upstream/master'
Fix issue #162 + improve nested validation highlighting

The fieldset.isValid property isn't necessarily initialized when the
view looks for it to determine fieldset validity. I've introduced a
validation method that counters this problem.
The validation method also ensures that any validation errors in nested
Archetypes are highlighted on the parent/root Archetype
Merge branch 'pr/157' into pr/164