making stuff more modular