#11 - fix extraProperties issue	

Not sure of the ideal behaviour here:

The bug was being caused by:

The getter/setter being defined on the first instance to create a property at runtime, but the definition of the property being stored in this._definition, which is the same object as prototype._definition. Thus, when the second model tries to add the property, the definition is already in the prototype hash, so it doesn’t go ahead and create the getter/setter on the instance.

This fix works, because it ensures the getter/setter is created on the prototype, rather than the instance. This _works_ but I’m not sure it’s the correct fix? The alternate fix is to store “instance definitions” separately from “prototype definitions”.

fixes: #11
BBTest - implement clone.
BBTests - implement “has”
BBTest - change _changed to changed as per backbone.
BBTest - initializing a model shouldn’t count as a “change”
BBTest - Allow additional static properties to be passed to extend.
BBTest - _values should be available before parse?
Fix extra properties so that they are defined on the instance not the prototype.
remove has/clone per discussion
renaming changed back to _changed. Removing static props. Updating or removing tests as necessary
merging bb-test-fixes