https://itnext.io/boosting-performance-in-a-diagramming-app-with-quadtrees-and-binary-search-on-path-4412285a78ae