add an alternate setup file which uses cmake

this allows for building in parallel and for building the library only once rather than once for each .so file
so here we can add optional_args as CXXFLAGS="-Darg1 -Darg2 " cmake OTHERARGS, and also add an option "compiler_flag_path" as "CC=path/to/gcc CXX=/path/to/g++", these 2 optional args can go in front of the cmake call in the subprocess command string.