Plugin interface { Name() string, SetOption(store KVStore, key string, value string) (log string), RunTx(store KVStore, ctx CallContext, txBytes []byte) (res abci.Result), InitChain(store KVStore, vals []abci.Validator), BeginBlock(store KVStore, height uint64), EndBlock(store KVStore, height uint64) []abci.Validator}