Windows Build Implementation

The continuation of https://github.com/utensil/nupic.core/pull/23

Reference issues 
- Investigate AppVeyor CI build for Windows https://github.com/numenta/nupic.core/issues/134
- Windows build support https://github.com/numenta/nupic.core/issues/103

To-Do
- [x] Need to replace tabs with 2-spaces and general tidy up to learn code layout
- [x] Eliminate unistd.h
- [x] Look at eliminating external dependencies (zconf.h wont work in current state with Windows builds, HAVE_UNISTD_H defined)
- [x] Adhere to chosen directory layouts
- [x] Make sure all OS related stuff in appropriate place and add more platform specific tests
- [x] Further work to improve the Cmake for cross-compilation
- [x] Deal with test output formatting
- [x] Suppress info warning and deal with depreciation
- [x] Check for exclusion commands in appveyor.yml (false errors, etc.) - Rewrote NTA_THROW
- [x] C++11 on? - Yes, on by default All seemed to work durinf GCC tests
- [x] Work out why NuPIC barfs on generate_dynamic_library - Params
- [x] Try this feature branch with NuPIC - SWIG and NUMPY work arounds
- [x] Sort out static library prefixes
- [x] Archive static libraries, and update CMakeList
- [x] Transfer AppVeyor Web UI settings to appveyor.yml
- [x] Stick with Travis (MinGW) or AppVeyor (with .Net), or other?
- [x] How to skip test cases (eg. testCases_["NTA_BasicType_Int32, size -10"])
- [x] diff clang, gcc, osx, and win build listings - Look identical
- [x] Build for Visual Studio 2012 (v110 test of C+11 feature set) - Passed
- [x] Work out how to find oldnames.lib
- [x] Use NTA_INTERNAL to determine CI in use? hence change behavior of NTA_THROW
- [x] Alternative to PCRE and NTA Regex? (C++11 only?)
- [x] Addition of a lint solution (cpplint.py in bin dir?) - Skip this PR
- [x] x64 prebuilt libraries
- [x] Will Windows SDK 7.1(2) allow this to build in an Express (free) version of the IDE?
  * Compare compiler version through all VS and SDK packages to see support level of C++11
- [x] Dynamic library options, CMake update, testing and packaging (dirs & files)
  * Ahmed's DLL branch, ready to merge but would like some tidy up and a couple of changes first
- [x] [NuGet](http://www.codeproject.com/Tips/806257/Automating-NuGet-Package-Creation-using-AppVeyor) deployment? - Works https://www.nuget.org/packages/nupic.core/
  * Ensure third party library copyright is handled.
  * Numenta copyright/license changes to NuGET information
- [x] Apply legal notices to library properties (package metadata, see root LICENSE.txt)
  * And check third party licenses. Although we do use the same externals, and one additional (PCRE)
- [x] Versions? - Example in algorithms\Version.hpp
  * Will do for the moment, Need to tie into main core when implemented
  * Remove my version file, adopt official way
- [x] Why use separate Apr includes? linux32 1.4.8, Win32 1.5.1, Linux64 1.5.2, Darwin64 1.4.8
  * Which version is best for Win32?
  * Need for different version, stick with current one?
- [x] Try more recent Boost library (removes Unknown compiler version warnings) - Stick with warning
- [x] Create new branch to only contain source changes
  * https://github.com/rcrowder/nupic.core/compare/numenta:master...103-windows-build-src
  * Announce to ML
- [x] Investigate using PiP instead of Nuget
  * With NuGet working, may be the best way of obtaining a Win version of core
  * Can't see a case for Windows version on apt, yum, etc.
- [ ] Document build process (Readmes' and Wiki)
- [ ] Windows build support, for cygwin and mingw https://github.com/numenta/nupic.core/issues/103
  - Some CMake trickery is required for GCC under Windows.
  - http://www.cmake.org/Wiki/CMake_Cross_Compiling#The_toolchain_file
  - cmake -DCMAKE_INSTALL_PREFIX=../release -DCMAKE_TOOLCHAIN_FILE=../../src/travis-mingw32.cmake -G "Unix makefiles" ../../src (or "MSYS Makefiles" as the generator).
- [ ] Handle lack of inline asm support for x64 builds
  * Extract all inline ASM to separate files for Assembler
  * Or convert inline assembler to intrinsics and cope with missing functionality (e.g. jne)
  * Does the optimizer do a good enough job?
- [ ] Side by side debug of helloregion.exe with VS IDE and Docker VM (which?) OS IDE
  * Or get this PR working with NuPIC
  * Or port NuPIC Studio to Windows - This one, now build process has been changed
- [ ] Create a new, or transfer Ahmed's existing, NuGet account