push packages into more cohesive sub-packages