introduction to modules and classes