code: function extend(target) {
      slice.call(arguments, 1).forEach(function(source) {
          Object.getOwnPropertyNames(source).forEach(function (name) {
              target[name] = source[name]
          })
      })
      return target
  }
docs: /*
  Extend will extend the first parameter with any other parameters
  passed in. Only the own property names will be extended into
  the object
  
  @param Object target - target to be extended
  @arguments Array [target, ...] - the rest of the objects passed
  in will extended into the target
  
  @return Object - the target