Made changes to accomodate clang.
Added better warning flags, removed some existing warnings, and patched boost includes to stop reporting thousands of warning on msvc.