Async methods/more tests/bugfix

adds async methods and tests for those, also I noted a bug where all the nodes removed were not being returned, updated the tests to catch that. 

The bug ended up being related to points only being found if they were inside a rectangle but not on a border. But while deleting nodes the subtrees would often have points on their borders as the border was made from that point causing them not to be reported deleted.

Just changed it so that points (and only points) are allowed match on a border.