right now the core is half C and half C++. these changes move the core towards C++. C++ allows for some tricks that reduce complexity in many core components.
for drivers there are not big changes: we used macros before and we use the same macros now, for most things but under the cover there are many simplifications in the definitions of these macros
and easier code means that it's easier to understand what things do for devs, and to spot any subtle bug which might possibly still exist. not to mention that easier code in the source means that it becomes also easier for Aaron to add any improvement he has in mind