Explain module communication
Inherit from abstract classes