restructured modules, added util module