using move_iterators in client constructors