Our site has an awful lot of roles for authenticated users, but 90% of them are irrelevant in terms of cache keys. I have crafted a small patch to the ESI module that allows the set of roles that are incorporated into the hash to be configurable in the settings. The default is still to include all roles.
For more advanced cases, I've also added drupal_alter() hooks into the role and user hashing functions for other modules to do fancier decisions on which roles matter.
Hope you like it! Wonderful module by the way...