Splitting the Trunk subcommands/subclasses into separate files for clarity

@alloy a quick approbation/code review before merging?