public MapStream<K, V> filter(BiPredicate<? super K, ? super V> predicate) {
        requireNonNull(predicate);
        return filter(e -> predicate.test(e.getKey(), e.getValue()));
    }
Returns a stream consisting of the elements of this stream that match
the given predicate.
<p>
This is an intermediate operation.

@param predicate  a non-interfering, stateless predicate to apply to each 
                  key-value pair to determine if it should be included
@return           the new stream
@throws NullPointerException if any of the provided parameters are {@code null}
common-parent/mapstream/src/main/java/com/speedment/common/mapstream/MapStream.java