Uses messages.addReply to get substitutions working

… also validateName wasn't being passed options

Fixes #17