Add CMakeLists for building shared library and executives