C++11 upgrade

This builds off Austin's work and includes the latest SWIG updates to master. It builds for me but the CMakeLists.txt needs to be refactored a bit so the paths are right everywhere.

We may want to include some of the CMakeLists.txt changes from #1264 as well.

Fixes #1485.