Leave the nupic build/install process the more "pythonic" as possible

This PR aims make Nupic "pip installable". For this it tries to leave the build/install process the more "pythonic" as possible using:
a) native support from SetupTools to build all C++ extensions (https://github.com/numenta/nupic/issues/1573) 
b) using Python scripts to perform jobs that were being performed by C++ executables (https://github.com/numenta/nupic/issues/1576).

The motivation of B is because it's very tricky install all current cpp executables and libraries using A solution. Some of these libraries (like bindings) are inevitable to be build as extensions, however c++ extensions like `htmtest` and `compare_version` can be replaced to pythonic versions. Different than bindings, these 2 extensions are complicating the process as they should be installed into souce repository (`bin` folder, to be exact) and not into `nupic` package install folder like the other modules. 

Once that all extensions now can be build in a natural way, we can remove CMakeLists.txt from NuPIC Pyhton. This makes that CMake becomes essential only to build the NuPIC Core library (which is an optional job and so we could bypass it during PIP process).

I'm working on the pythonic version of HtmTest. Thus it's normal that the tests fail, because Travis still is referencing its c++ version.