The intelligent scissors tool is one of the best implementations of this I have seen but it needs some enhancement to really make it powerful.
It would be great if you could backspace and remove points that have not been placed correctly. At the moment you either have to redraw the selection or come back later and add or subtract.
Also it would be very useful to be able to use the 'Esc' key to back out of scissor mode.
Finally, some level of control over the search radius of the scissors while following an edge would be very useful.