code: public static <T> T search(Iterable<T> iter, SearchFunction<T> fx) {
          for (final T t : iter) {
              if (fx.match(t)) return t;
          }
          return null;
      }
docs: Applies the search function {@code fx} to each of the items in the
  {@link Iterable iterable}, returning the first found match or null.
  
  @param iter {@link Iterable}
  @param fx {@link SearchFunction}
  @return {@code <T>}