Namespace valid options

This avoids a problem where the keys of nested options objects were
considered valid options themselves.
Ignore Object prototype when looking up options
Merge pull request #1953 from jugglinmike/valid-options

Valid options