M/nestedloop

unrelated to this PR, but we should probably create a ProjectorResolver interface and use that. ProjectionToProjectorVisitor imho exposes too many things as public