Feature: fuzzy regex support

Fuzzy pattern matching. Activated in a plugin by setting the allowed_typos kwarg in the respond_to decorator
Nonfuzzy patterns/plugins should still work, as long as they used named (and not number-indexed) groupings
   
    * Unnamed groups referenced by number/index fail. they match but then the retrieved group string is off by 1 in the index. This feature can be fixed by applying a global group to both fuzzy and exact patterns and overriding the search method to decrement the groupings in the returned list by 1
    * Any fuzziness/typos in unnamed/uncaptured groups (like "(set|new)" in set_topic) will not match
    * Fuzziness only applies to the first unnamed/uncaptured group (group 1 not group 0)
    * regex package is used in place of re throughout all plugins and mixins, even those not using fuzzy features
    * The FuzzyMixin is CRUFT, but may be useful in the future
    * Documentation written before implementation, so needs to be updated to accurately reflect behavior