last Class new & extend fixes
Object.eachPair iterate over all properties

Now we iterate over all object properties for append,merge,complete of
object pair.
This commit allow the following code to work:

var a = {};
Object.defineProperty(a, 'foo', { get: funciton(){ return 'bar'; }});
var b = Object.create(a);
var c = Object.create(b);
var d = Object.append({}, c);
d.foo -> 'bar'