Made rotatable::dirty atomic and added rotatable copy constructor.

Issue @B6 : Decided to avoid a threading risk by making the dirty
flag atomic. This necessated a new copy constructor because
std::atomic does not have a copy constructor itself.  That's the
last of the detail changes to the rotatable design after review.
Next is the rotatable unit test.