separate visitor and index

just cleanup as I read, and aligning it with other improvements im making with other transforms