Support setting vert/edge/face selection, using the sticky option without performing a second loop over all faces to flush selection. Existing selection code didn't take advantage of BMesh connectivity since the logic is from before BMesh was included.