Revert "DepthFirstAstVisitor no longer tries to visit the children of non C#"

This reverts commit 158b5176a2bd0616596a7b2755a18804c7f01477.

The optimization was invalid; the VisitChildren() method is not
necessarily an unnecessary call on leaf nodes because it is virtual.
Add unit test demonstrating that the DepthFirstVisitor optimization was invalid.