Fixed a bug causing the tree to have linear depth in some degenerated
cases, e.g. when points are on a segment or on a hyperplane in general.
Added a check of the tight bounding box to avoid that.
Also set the default bucket_size from 3 to 10, which results in much
better runtime.
remove all mutable member variable and leave only one const_cast in the kd-kdtree private function
const_build. This function is called in const predicates when the tree is not already internally built.
The documentation has been update and a few typos fixed at the same time.