Improved responsiveness of editor for large projects

The attached change goes a long way towards improving the responsiveness of the editor for projects with large numbers of steps (issue #6), by not recreating the same StepMatcher for every candidate step on every keystroke.