move the defaults to where the flags are defined so the user knows what ...

...the values look like, and report at least one error

merge me!
perhaps you want to read the rest of the diff?