Deprecated std::auto_ptr

Replacing the std::auto_ptr deprecated to his substitute std::unique_ptr.
Redefining concept assert for the warning suppress

Problems with concept assert causing an compilation error.
Redefining the concept it is vanished.
Passing the zookeeper path via define

Instead of been a fixed path, I am passing the path for the zookeeper
server as a compiler argument.
Strange clang double conversion

For some extrange reason, clang is not correctly converting a double
to uint64_t. I am removing the ckeck when using the clang compiler
Passing the zserver path via define

Instead of been a fixed path, I am passing the path for the zmq
server as a compiler argument.
Undefined variable in lambda

Clang is complaining about a possible undefined variable when using
closures.
Missing header

Clang is complaining about a class that cannot be found. Added the
header where the class is defined.
Invalid conversion from integer to string

There is no valid integer conversion to ostream. Using the std::string
to convert the integer to string before calling the operator <<.
Clang complaining about default argument.

For some strange reason, clang is complaining about the default
std::vector argument. I just overloaded the method with and without
the std::vector parameter.
Clang complaining about types

1- Casting the float to integer because clang was complaining about
   the type
2- For some reason, the UUID in my machine is longer than the one from
   the current test. I just add another check to validate it according
   the string size.
Passing the csv file location as arg

Instead of having the csv file location fixed in the code, I am
passing the location as compiler parameter.
Clang complaining about class definition

Clang was complaining about the class definition inside a lambda.
I changed the definition to be outside the lambda.
Changed the builtin function to be a std function

Replaced a __builtin_isxdigit function by a cctype isxdigit function
Variable length array of non-POD

Clang does not support variable length for non POD. Changed the code
to use a vector instead of an array if the compiler is clang.
Clang complaining about const

1- Clang is much less permissive in regards to const. Changed the function
pointers attribution to cast the const pointers to be non const.

2- Changed the exception to use exception_setter.
Added BASE_DIR for tests

Tests are now supporting a BASE_DIR define, that will tell to the
project the absolute application directory location.
Use std::tuple instead of boost::tuple

Undefining the tuple definition to tell to boost to use the std::tuple
instead of boost::tuple