lib/base/object.js
function extend(parent, ext) {
    var proto = parent.prototype || parent;
    merge(proto, ext);
    return parent;
}
function extend(parent, ext) {
    var proto = parent.prototype || parent;
    merge(proto, ext);
    return parent;
}
function extend ( parent , ext ) { var proto = parent . prototype || parent ; merge ( proto , ext ) ; return parent ; }
Extends the prototype of an object if it exists otherwise it extends the object.

@example

var MyObj = function(){};
MyObj.prototype.test = true;
comb.extend(MyObj, {test2 : false, test3 : "hello", test4 : "world"});

var myObj = new MyObj();

myObj.test => true
myObj.test2 => false
myObj.test3 => "hello"
myObj.test4 => "world"

var myObj2 = {};
myObj2.test = true;
comb.extend(myObj2, {test2 : false, test3 : "hello", test4 : "world"});

myObj2.test => true
myObj2.test2 => false
myObj2.test3 => "hello"
myObj2.test4 => "world"


@param {Object} parent the parent object to extend
@param {Object} extend the extension object to mixin to the parent

@returns {Object} returns the extended object
@memberOf comb
@static
Extends the prototype of an object if it exists otherwise it extends the object .