restructuring modules, no classes for composing methods