code: public static IDifference construct(String name, Integer first, Integer second) {
          if (first == null && second == null) {
              return null; // no difference
          }
          if (first == null || second == null) {
              return new IntegerDifference(name, first, second);
          }
          if (first.intValue() == second.intValue()) {
              return null; // no difference
          }
          return new IntegerDifference(name, first, second);
      }
docs: Constructs a new {@link IDifference} object.
  
  @param name   a name reflecting the nature of the created {@link IDifference}
  @param first  the first object to compare
  @param second the second object to compare
  @return       an {@link IDifference} reflecting the differences between the first and second object