code: @SafeVarargs
  	public static <T> Collection<T> apply(Filter<T> filter, T ... elements) {
  		List<T> list = new ArrayList<T>();
  		if(elements != null) {
  			for(T element : elements) {
  				list.add(element);
  			}
  		}
  		return apply(filter, list);
  	}
docs: Applies the given filter to the input and returns only those elements
  that match it.
  
  @param filter
  a (possible compound) filter; elements in the input array matching the
  filter will be returned.
  @param elements
  the collection of objects to filter.
  @return
  a filtered set of elements.