cleanup.
Added in the failed POSIX permit object proposal from source.
Got it compiling with modern libraries and compilers.
Replaced all use of Intel TBB with OpenMP.

Fixed up some sloppiness in use of read()/write() to interact with system fds.

Now compiles without warnings on both GCC and clang.
Fixed up more sloppiness on Windows.
Added unit test to ensure that destroying permits being waited upon in other threads works as intended.
Added strong guarantees for destroying a permit currently being waited upon or granted in other threads.

Improved documentation.

Added unit tests for destruction guarantees.
Ripped out all the old C11 to C++11 thunks, replaced with C11 to Boost.Atomic thunks.
First go at forking the pthreads condition_variable implementation into a pthreads permit implementation.
Got the pthread permit unit tests working under the Boost.Test framework.

Fixed a tough to find race condition - turns out that a pthread cond on Linux will very, very rarely hang if you destroy it during signalling it.
Removed Boost dependency when compiling pthread permit standalone.
First time boost::permit<> compiles and passes default construction.
Ported over the remaining condvar unit tests to permit. They hang during execution, but otherwise compile.
Added mutex breaking permit wait variants.

Fixed bug where timespec was using clock monotonic and so timed waits were failing.

Very close to Boost permit passing test suite now, just one issue with delay being wrong.
Ported over the last of the condition variable unit tests to the permit object.
Added in missing unit test files for permit.
Merge branch 'master' of github.com:ned14/thread
comment mingw toolset flags - #3967.
Merge branch 'develop'
Comment no more existing functions.