unwrap values during fetch

fetching a value with #fetch a proc might be set to the specified key,
in order to unwrap all procs and only return the underlying value,
value.call is performed as long as it does not return any new proc
objects (e.g. it does not repond to :call any more).

fixes #859