// This is the heart of the semantic versioning. If we
// add or remove a method from an interface then
Delta add;
Delta remove;
Type type;
// Calculate the type of the clazz. A class
// can be an interface, class, enum, or annotation
if (clazz.isInterface())