add modules and misc changes