add dict-has-key to struct:environment so they can be nested
allow slashes in partial paths