Implemented intersection and difference methods

Minimum key for each node are handled explicitly to ensure _O(n+m)_ performance.

This is a replacement for [Pull request #52](https://github.com/bos/critbit/pull/52).