Cache the StepMatcher on the StepCandidate.  They're not that big (~1k
each) and recreating and recompiling the regex pattern every time is
insanely expensive.
Merge pull request #5 from rimesc/master

Cache the StepMatcher on the StepCandidate.  They're not that big (~1k