Broke out some of the init code into separate files.