This is a BC break; adding any new methods to an interface will break existing implementations. This either needs to be in a separate interface, which our default implementations use, or simply an implementation detail of our implementations. In both cases, we'd need to check for availability of the method before using it.