move bootstrap into it's own file, so we can start unwinding the mess