1. A computer implemented method of implementing transcendent page caching, the method comprising: establishing a plurality of virtual machines on a physical machine, wherein each of the plurality of virtual machines includes a private cache, and wherein a portion of each of the private caches is used to create a shared cache maintained by a hypervisor; storing memory pages in the plurality of virtual machines' private caches; determining that at least one of the stored memory pages has been designated to be removed from one of the plurality of virtual machines' private caches; delaying the removal of the at least one of the stored memory pages; storing the at least one of the stored memory pages in the shared cache; requesting, by one of the plurality of virtual machines, the at least one of the stored memory pages from the shared cache; determining that the at least one of the stored memory pages is stored in the shared cache; and transferring the at least one of the stored shared memory pages to the one of the plurality of virtual machines.