Eliminated my own swap() function in favour of std::swap()