beginnings of a module pattern