Add talky and refactor.

Didn't dry up the whole plugin creation bit, but did extract them out.