public static <K, V> MapStream<K, V> of(Map<K, V> map) {
        return of(requireNonNull(map), false);
    }
Constructs a new {@code MapStream} from a map of key-value pairs. The map
will not be affected.
<p>
This is equivalent to writing:
{@code MapStream.of(map.entrySet().stream());}

@param <K>  key type
@param <V>  value type
@param map  elements to stream over
@return     created {@code MapStream}
@throws NullPointerException if any of the provided parameters are {@code null}
common-parent/mapstream/src/main/java/com/speedment/common/mapstream/MapStream.java