trying to replace janky inheritance treatment in Node class
fail whale
Make method overrides do the right thing on ast nodes
Add visitor base class