Overhauling html traversal