fixes #1280; properly excludes subdocument fields

Before, you would have to specify the full subdocument path and all
properties to exclude it. Can now just specify the top level
refactor a bit