handle the visitor stack somewhat more elegantly
2.0.1