Split subsystem creation into a bunch of methods