stepVisualBoundary() recurses on each step which is going to be a problem in some browsers on some datasets.