extract sub functions and rename some variables in LayeredRangeTree

  - unite rangeQuery and rangeSearch as rangeSearch
  - rename getSplitNode to findSplitNode
  - add isOnLastTwoDimension, searchOnFrontDimension, searchOnLastTwoDimension
in LayeredRangeTree extract getMidPair(), subDivide() and numDimensions()

  - do some filed rename in LayeredRangeTree
  - also rename DictComparator.getMainkey() to getPrimeComparatorIndex()
Simplify the constructure function of DictComparator

  - suppress the iscopy option parameter
  - now only copy comparators when construct new instance
refactor LayeredRangeTree's constructor

  - extracts some functions and make it more clean
restrict field and function protection range of LayeredRangeTree
LayeredRangeTree: rename FraCasData to FraCasTree
Reduce duplicantion codes in LayeredRangeTree.TreeNode.rangeSearch

  - LayeredRangeTree is at a relative steady edition now