Swap the forgotten member 'stats' in MemoryManager
Rename MemoryManager::swapWith() to swap() since it has the semantics

* So it has the same signature as usual std types for in-class swapping functions.
* Move the definition nearer the members definition so
  it is less likely to forget to update it when changing the members.
* std::swap can handle a static array in C++11