Fix NodeObject.save to properly remove elements from node

When an element got removed from the role, we also need to remove the
element from the node when saving it.

However, we were only doing a deep merge, without trying to remove
anything. So old elements stayed instead of being removed. It turns out
that Chef::Mixin::DeepMerge::deep_merge has the feature we want, with
the knockout_prefix option.