added copy assignment constructor
attempt at move-and-swap idiom failed, because swap() of atomic_uint_fast8_t is not defined