Add test won when_all iterators for c++98 compilers.
make it possible to have polymorphic queue copyable_only/movable_only/copyable_and_movable.