RFC for Chef 12 Attr changes

This part is due to underlying implementation - they can't resolve things in the same way for normal reading and still have enough information to whip out all of the different storage hashes in the precedence (you may, by the time you get to the equals, be on a role_default value, but you still need to wipe out all the other ones), so the ! methods work fundamentally differently.