make CriticalError a feature
critical error cleanup

-re add obsoletes
-rename to CriticalError
-make the CriticalError public
-null checks
-inject the configure to use less statics
finish CriticalError rename
prefer fully qualified namespace at nested scope
add ConfigurationBuilder support to acceptance tests
add critical error test
Merge pull request #2253 from Particular/CriticalErrorFeature

make CriticalError a feature