This covers most of the transitive closure of the types that appear in a checkpoint. A breaking change to any of these types implies a bump in the checkpoint version number. This is part of pulumi/pulumi-service#1046.