converted to c++11, dropped boost, other stuff