More work on the RTX wrapper
Added a small object optimization to function<>.
Now function<> can internally hold
- a member function pointer + an instance
- a function pointer + an argument of pointer size.
These small object won't access the heap.
Minor improvements
Have a distinct type_traits.hpp for each native OS.
Throw better error messages.
Simplify the implementation of the thread class for CMSIS.
Simplified code dealing with timeouts and added methods which operate on a time point.
Added a small test which operates on member data pointers.
Fixed the compiler flags for armcc.
Started to implement a scope guard.
Scope guards are RAII classes which perform a certain cleanup action when they go
out of scope. The ScopeGuardBase is the base class for all scope guards. The free
function makeScopeGuard() can be used to create a concrete guard.
Clean the mutex locks.
Fixes in signal test
Started with atomics.