Gcc full

These changes allow compiling with GCC 4.8. Tested with GCC, Clang, and VC++. Travis testing is added as well.