fixes & tests for intevalset and Tree

- tests for tree  & intervalset
- clean up tree.rb
- module NodeImpl now works right
- intervalset changes to work with ruby inclusive Range
  instead of the python exclusive range.
- add Range methods to match python length,start,stop
- intervalset now creates an array at init to avoid
  doing nil checks.
- add default methods to ParseTreeVisitor