This series of commits seemingly fixes the exponential behaviour
observed after integrating RangeSet class

Updated RangeSet.sum() method to handle empty 'this' case
    - If 'this' was empty, the earlier implementation would return an
      empty set regardless of what was being added.
    - This commit updates the behaviour of sum() to handle this case.

Modified HierarchicalSplit class
    - Nodes now store the following locally
        - definition
        - range
    - Replaced wrong implementation of MAX, MIN with a TODO

Cleaned up WorldTree.getBounds() implementation
    - Removed unnecessary clone() calls and nested loops
    - Replaced with RangeSet.sum()