Why does the CMSIS no longer has bitfield for peripheral headers?

I started a new project recently and went to get the latest CMSIS packs.  I noticed the peripheral include files no longer include bitfields. I noticed several more changes in the header files and felt like it was a step backwards. I found this change happened when going from CMSIS 2.x to CMSIS 3.x.  I looked around and googled and found no mention as to the change and wondering why it happened? 

Note I assume the change happened because bitfields are messed up in the C language.  That is when you do a bit field write, you are really doing a read, modify, write for the whole register which can create some strange behaviors if you do not understand this.  However I wanted to understand more as to why the change.