cpp/thread/unique lock

The class is a general-purpose mutex ownership wrapper allowing deferred locking, time-constrained attempts at locking, recursive locking, transfer of lock ownership, and use with condition variables.

The class is movable, but not copyable -- it meets the requirements of  and  but not of  or.

The class meets the  requirements. If Mutex meets the requirements,  also meets the  requirements (ex.: can be used in std); if Mutex meets the  requirements,  also meets the  requirements.