Revert "Use a function type to implement ListenerFunc"
Revert "Use a function type to implement ListenerFunc"

This reverts commit 70c3b80e7c9727c2d1b6f7ddf089dd45c9c1f9dc. Panics occurred
when removing listeners as functions in Go are not comparable.

WatchBeam/redutil