Napari v0.6.5rc0 has a new shape selection event due to this PR. Using this event will let us simplify a lot of the shape selection logic in this file and this file.
Of course we should wait for the full release of 0.6.5 before merging such a change.