TorCtl is a python Tor controller with extensions to support path building and various constraints on node and path selection, as well as statistics gathering.