Utility class to use Hazard Pointers in C++ Concurrency Code
This class enable to use Hazard Pointers as memory management technique for any type of class.
For now, all the parameters are configurable only at compile-time, in the future the class will be configurable at runtime too.