Removing redundant ValidationError implementation.
Merge remote-tracking branch 'origin/master'
Minor namespace fixup to be a wee bit more self-documenting of the intent.

Users of nupic should import validate from nupic.data.jsonhelpers, which may
also raise a ValidationError, also in nupic.data.jsonhelpers namespace, and
which is a subclass of ValueError.  With this changeset, it's obvious that
the ValidationError defined in nupic.data.jsonhelpers is explicitly the
implementation from Validictory.  Should we need to change it to a different
implementation, the assignment would change.
Use context manager to close a file after parsing json.
Raise own ValidationError exception implementation, which happens to be a
validictory.ValidationError subclass (which may change at some point in the
future), honoring the original intent of this module.
Merge pull request #91 from oxtopus/redundant_validationerror_exception

Redundant validationerror exception
compile: enable include -I of standard libs

as we'll shift to shared libs, and it does not cause any problems
remove old code workaround (for gcc4.1)

that compiler is 6 years old, I seriously doubt it could be installed on any recent ditribution,
safe to delete this hack
gitignore: remove nonexisting file reference
compiling: replace hard-coded gcc/g++ reference with $CXX

so that compiler found by ./configure can be used
(support for llvm/clang)
build: proper make clean target

recursively call make clean for $subdirs
and call cleanup.sh script (nice if removed later)
and setup.py --clean (dtto)
gcc/clang compatibility fix (lvalue cast)

be more strict, dont allow lvalue casts (clang default, gcc does allow it)
gcc/clang: fix function declaration after all templates defined

just reorder some template/function definitions, so that all templates required are already defined (above)
see http://clang.llvm.org/compatibility.html#dep_lookup
small fix: if-else not needed, always include

the #include is used in both cases
gcc/clang: fix template lookup

this is for adhesing to C++ coding standards,
fix unknown operator<<  ...
see http://clang.llvm.org/compatibility.html#dep_lookup
fix provided by placing a declaration (of operator<< template) before the function which
uses it.