fixed modules to be more self contained