Make subclassing context easier
. The value returned from the lookup() is now passed through a
  method value() which can be easily overridden by subclasses
. If nothing is found, NULL is returned as-is