Adding deprecation value to replace function

@cpennington @flowerhack @dianakhuang 
The replace function wasn't transmitting the deprecation property to the new object. This should fix that.

I'm 100% sure where I should put the unit test for this. Suggestions?
could we have more descriptive names for these, for readability? e.g. hex12 could be "deprecated_hex", since that better describes what you're trying to test with that variable