my take on not exposing secrets

the idea is the default behavior is to not expose secrets.  There are times, though, when it is a handy feature to get the app itself to write out a compete config file.  

this PR adds the ```--admin.expose_secrets``` command line option and adds a ```secret``` attribute to the Options class.  If ```--admin.expose_secrets``` is NOT on the command line, then ```--admin.print_conf```, ```--admin.dump_conf``` & ```--help``` will always an Option's value as "****************" if that Option has the attribute ```secret == True```.

I totally agree with the ugliness factor here.  I need to go in and audit and refactor the usage of ```value``` and ```default```.  Their original uses have blurred since the beginning.  We might now be able to get away with just ```value``` and drop ```default``` entirely.   However, that's  outside the scope of this bug.