#1348 - implementing defaulthard option to turn on all enforce options

I believe I need to do some more work on unit tests and perhaps code standards. I wanted to get a general idea if this approach would be acceptable. 
Please put curly braces on the same line here and elsewhere. Also don't put space between the function name and its open paren.