@Override
  public boolean equals(Object other) {
    if (this == other) {
      return true;
    }
    if (other instanceof Id) {
      Id id = (Id) other;
      return Arrays.equals(data, id.data);
    }
    return false;
  }
Generate new Id, based on machine/process, current seconds and inrementing counter.
Should be treated as opaque holder though.
@return the id
mongo/src/org/immutables/mongo/types/Id.java