g++-4.6 can't infer return type of multi-line lambdas
g++-4.6 doesn't allow non-static data member initialization
g++-4.6 needs us to explicitly use "this" pointer in these cases
g++-4.6 complains about default public, non-virtual destructor
g++-4.6 doesn't support emplace on std::set
All other hacks to get code to compile with g++-4.6