In order to allow -fpic and -fpie in the user target, move init to it's own target -- it needs its own special build rules to make it loadable by boot.
Split out build definition YAML files to allow different options based on config, target, kind of module, and target/kind combination.