Pull more of startup.js out into separate modules