code: public static <T> boolean containsAll(
        Iterable<T> iterableToCheck, Iterable<T> elementsToCheckFor) {
      return StreamSupport.stream(elementsToCheckFor.spliterator(), false)
          .allMatch(element -> Iterables.contains(iterableToCheck, element));
    }
docs: Returns whether or not the given {@link Iterable} contains all the given elements to check for.
  
  <pre>
  IterableUtils.containsAll(Collections.emptyList(), Collections.emptyList()) = true;
  IterableUtils.containsAll(Lists.newArrayList("a"), Lists.newArrayList("a")) = true;
  IterableUtils.containsAll(Lists.newArrayList("a"), Lists.newArrayList("b")) = false;
  IterableUtils.containsAll(Lists.newArrayList("a", "b"), Lists.newArrayList("a", "b", "a", "b")) = true;
  </pre>
  
  @param iterableToCheck {@link Iterable} to to check
  @param elementsToCheckFor elements to check for
  @param <T> the type of elements in the given iterables
  @return whether or not the given {@link Iterable} contains all the given elements to check for.