Clean + Code validation. Optimised split_subcodes and parent_merger algorithm to recycle existing codes when possible