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 Distutils/SetupTools to build all C++ extensions (https://github.com/numenta/nupic/issues/1573) 
b) 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_nupic_core_version` can be replaced to python scripts. 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: as this is an optional job, we could bypass CMake/Git use during PIP process decreasing the number of build/install steps and dependencies.

I still am working on the pythonic version of `HtmTest`. Thus it's normal that some tests fail, because Travis still is referencing its c++ version. 

* * *

## TODO:
- [ ] Figure out the `ARCHFLAGS="-arch x86_64"` requirement on darwin64
- [ ] Update supporting documentation (README, wikis) with any build changes
Instead of this printout and exit, I think I'd rather raise an Exception for things we define as "fatal". I'll include in a PR I'm working on.