finally refactoring the boot config stuff; merged into kernel