Subsystem restructuring. Please avoid merging stuff which would conflict with this. This took days to update.

some recent merges were lost due to entire conflicting files. I did ask nicely.
iamgoofball, you are being insufferable. stop spamming the same gripe over and over.