Add adapted version of rbush

This pulls in @twpayne's adaptation of rbush.  It includes changes in the `ol.extent` package that are not strictly required by rbush, but I'm looking for harmony here and don't see the point in resolving conflicts in `ol.extent` more than once.