class methods, message passing, modules and scope