[boost] Nasty compile time reflection and iteration for POD types using C++14 without macro