Pop properties from objects and verify you got all of them.
Wrap a function to modify its options object argument to be merged with default options and wrapped in an objPop instance with type checking.
Look up the value of some config object's property in a dictionary object, throw if not found. (Double lookup, double throw.)