use classes instead of modules.