Do substring replacements with regex, not strings.

In several places, substring replacements were being done with a string
rather than a regex. This was causing "blenches" to be wrongly stemmed
as "blenche". The regex in step_5a() was matching the string "e" in
"blenche", rather than just the final "e". Using regex fixes this. Other
areas of the code doing this were also updated. The success rate has
increased with this fix:

(1 - 157 / 30428) = 0.9948402786906796