see Refactoring Ruby Edition for examples of classes and modules