implement  Selection with Selection Range

1. HitTest and HitTestChain:
2. SelectionRange
3. still not complete :(