code: @SuppressWarnings("unchecked")
      public void addKey(StorableKey<S> key) {
          if (key == null) {
              throw new IllegalArgumentException();
          }
          add(new StorableIndex<S>(key, Direction.UNSPECIFIED));
      }
docs: Adds the key as a unique index, preserving the property arrangement.
  
  @throws IllegalArgumentException if key is null