/// <summary>
 /// Initialises a new weighted collection with the provided items,
 /// all having the same weight of 1.
 /// </summary>
 /// <param name="collection">The items which should be part of the collection.
 /// </param>
 /// <exception cref="ArgumentNullException">If the given collection does not
 /// exist.</exception>
 public WeightedCollection(IEnumerable <T> collection)
     : this(collection, Enumerators.Infinite(0d))
 {
 }