Wrapped classes now maintain their non-method properties

At the moment an object with non method properties will lose those properties if you wrap it.
eg:
{ 
  value: 1,
  method: function() 
}

would become:
{ 
  method: function() 
}

after a .wrap.

This pull request fixes that.