trying to settle on basic module structure