add tests for types that are located along different kinds of paths

- we try to cover all legal combinations of nested packages and objects
- also reorg tests a bit, and remove redundancies in the suite