using TextParser to handle the payload
avoiding merge conflict
better compatibility with built-in plugins
fix: minitest < 5.0 and version bump 0.3.0