optimize seen contains_add method.
optimize seen contains_add method.

The optimized version doesn't check explicitly if the item
was contained before but simply adds it and compares if the
size of the set has changed. This means the hash and pertubation
is only calculated once which speeds up the functions
"unique_everseen", "all_distinct" and "duplicates" in almost all
cases. One exception is when the iterable contains almost only
duplicates and few actual different items, then the new option
will be slower by approximatly 10%.

MSeifert04/iteration_utilities,MSeifert04/iteration_utilities,MSeifert04/iteration_utilities,MSeifert04/iteration_utilities