Move visitor package up a level.

* Update tests
* Fix a few bugs