code: @SafeVarargs
  	public static <T> ConjunctionMatcher<T> compose(String compositeDescription, Matcher<? super T>... matchers)
  	{
  		requireNonNull(matchers, "matchers");
  		
  		return compose(compositeDescription, asList(matchers));
  	}
docs: Returns a matcher that logically ANDs the specified matchers with any number of further matchers.
  <p>
  For example:
  <pre>
  assertThat("ham", compose("a word with", startsWith("h")).and(containsString("a")).and(endsWith("m")));
  </pre>
  See {@code ConjunctionMatcher} as to how this matcher differs from {@code allOf} and {@code both}.
  
  @param compositeDescription
  a description of this composite used by {@code describeTo}
  @param matchers
  the initial matchers to compose
  @param <T>
  the type of the object to be matched
  @return a matcher that can compose itself with further matchers
  @see ConjunctionMatcher