Moved Type.merge to Program in a hacky way