Code from discussion on BDD and using modules for multiple inheritance to decorate classes and instances.