split internal package into multiple sub-packages