split out modules into their own directory