Removed the need for the Visit method on the Expr interface
Removed the Visit() method from the Expr interface.
Removed uneeded Visit() methods.
A little refactoring to removed some uneeded code convering edge cases that won't happen.