Add a useful helper: classMethods

Combine virtual and direct methods
Remove re-definition of classMethods