Updated Range class constructor to invalidate wrong ranges
Updated RangeTests test cases
    - Tests will no longer try to initialize invalid ranges
Updated RandomSpec parsing logic
    - Slightly tweaked float range type
Added a secondary break condition to RangeSet.add() method

The RangeSet.headSet() logic was resulting in all elements lesser
than the upper range of the new range to be inserted. This could
potentially result in a lot of sets that need not be iterated over

This commit adds a break condition so that the moment we encounter
a range that is not relevant, we break.

This logic works because we actually iterate over
RangeSet.headSet().descendingSet()
Replaced if-else with switch for the following methods
    - Datum.toInt()
    - Datum.toFlt()
    - Datum.toStr()

Updated Datum.compareTo() logic
This change has been made to try and reduce the number of calls to
Datum.Flt class
It is yet to be established if this change results in any
significant gains
FloatRange class was lagging behind IntegerRange
This commit brings it up to speed

Both classes' constructors were making unnecessary calls to
Datum.<init>
These have been eliminated
Modified Datum.toFlt() and Datum.compareTo()

Changed Datum.toFlt() to use Integer.floatValue()
This has single-handedly resulted in significant reduction in time

Added a few return clauses to Datum.compareTo() to return values
other than just {0, -1}
Modified RangeSet to stop unnecessarily invoking multiple constructor
calls to SetComparator
RangeSet now contains a static object that is used in all constructors

The inner-class SetComparator was mistakenly named setComparator
Refactored this
InitializationTest now parses through all Tiles to validate
    - This requires IMap to expose getNodesByLevel
    - WorldTreeFactory.Map now defines getNodesByLevel as public
Small performance updates to Datum class
    - Single constructor rather than multiple
    - Faster short-circuiting in toInt()/toFlt()/toStr() methods
HierarchicalSplit.Node class now uses RangeSet.sum() instead of
implementing the same logic locally