Full Thread Wrapper for unix.

* Uses the pointer to implementation pattern.
Add `ThreadException` class and destructor for the `ThreadImpl`.