> brr -- from the description it just sounds like np.argmax... and probably it is -- but with our Dataset's in mind, right?

yes, kind of. It can also be used as np.argmin.

> What about generalizing it -- e.g. making a class allowing any function (like np.argmax) to be given, and then instantiating winner_take_all ?

Most of the other code is actually not about argmax but setting the feature attributes right. Not sure if/when/how that would apply to other code. Do you have specific examples in mind to which we could/should generalize?