Add C++11 move semantics