Removed explicit defaults

Also added AppSettingAttribute constructors for int and boolean default
types, and improved the quality of the demonstration code (Program.cs)