Guard is a scope guard that may own a protected value.
Guard
Create a new Guard owning v and with deferred closure dropfn.
v
dropfn