code: public static <T> Stream<List<T>> windowed(Stream<T> source, int windowSize){
          return windowed(source, windowSize, 1);
      }
docs: Constructs a stream that is a windowed view of the source stream of the size window size
  with a default overlap of one item
  
  @param source The source stream
  @param windowSize The window size
  @param <T> The type over which to stream
  @return A stream of lists representing the window