1. A system for dynamic caching of content of sites accessed over a network by a user, the system comprising: a processor; a first storage device for maintaining a plurality of caches for storing the content of the sites accessed over the network by the user based on activity over the network by the user with the sites; a second storage device for storing statistics; and a non-transitory physical medium, wherein the medium has instructions stored thereon that, when executed by the processor, causes the processor to: gather statistics on suitability of the sites for caching based on user activity; store the caching suitability statistics on the second storage device; and dynamically create, delete, or resize the caches based on the caching suitability statistics.