clean up concatenated module style, refactor module hierarchy