more cleanup!
module pattern implementation