Renamed exceptions and added better descriptions based on usage.
Renamed exceptions again, various fixes and usability tweaks.  Updated lifetime stuff to use C++11 (for initializer lists).
Fixed an uninitialized file pointer.
Fixed a number of small issues.  Paths won't return character pointers because there was a temporary std::string that would be freed too early for the character pointer to be safetly usable.
Added formatted float output to io.  Made Exists() differentiated for files and directories.
Windows fixes for previous commits.
Turned on extra warnings, cleaned up unused variables and stuff.
Fixes for windows.
Fixed native string conversion empty corner case.
Rewrote the windows stdout/stderr/stdin stuff to use ConsoleW methods and stuff.  Output is fixed with mingw-w64 but I still don't see anything in powershell...
Forgot to add compile guards for some windows specific code.
Modified DeleterQueue to delete elements on pop.  Added DeleterStack.
Added modulus operator for handling negative numbers.  Apparently % isn't mod in C++.
Allowed type conversions from similar range types.
Added deleter dequeue.
Added endian converter.
Extended endian converter to handle big endian as well.  Confirmed compile-time endianness checking is in fact compile-time. (Apparently endian.h wasn't committed last time.)