title: vector<unique_ptr> resizing with push_back - how does it work?
body: <p>As far as I understand, when stuff is pushed_back into a vector, sometimes it has to allocate a new memory block, resulting in copying all the elements into it from the old memory block, calling their destructors. Since unique_ptr destructors delete the owned memory, how is it possible that they work with vector? 
  Is it safe to use unique_ptr in vectors?
  Is it slower than regular pointers?</p>