refactor intervaltree to use bi-directional sorted colls, add query-interval, add ctor for collections, use core.reducers