Putting in specs for isObject - and also fixing a problem, apparently in some JavaScript engines null has a prototype that is of object, funky..
Fixing mapping to deal with target property being null - don't try to get the type from a null property!