Here are some minor changes I came across while working on #101
we need an exception base class without anything: this way we are able to have also non message based exception classes with our own base exception class
I completed some classes with the PImpl idom so they can be created with std::make_shared
we shouldn't use any C Style points, but std::shared_ptr instead
Here are some minor changes I came across while working on #101