[API, INTERNAL] Exception: added BadCast type, made RuntimeError a typedef of std::exception
[FEATURE] Basic: added Demangler class and toCTypeName function
[FEATURE] File: added IOError exception
[API] Stream: lexicalCast throws BadLexicalCast exception
[TEST] Stream: lexicalCast test catches BadLexicalCast
[INTERNAL] Stream: moved BadLexicalCast inside lexical_cast.h
[FEATURE] Exceptions: added Asserter and ExceptionMessage<>

Squashed commits:
[INTERNAL] Stream: renamed AssertFunctor as Asserter
[FEATURE] Exception: added ExceptionMessage<>
[FEATURE] Basic: added basic functors - taken out from tokenization