refactor(bot): alternative PM syntax + additional code reuse

now supports @eddiemonge's suggested syntax in addition to my proposed
english-language syntax.

Additionally, reused code for execution of !pattern commands via function
doPatterns().