Bug Description

For custom code this makes it very hard and impractical to extend functions and use context to do this.

Personally I'm involved in some code that changes how uom conversions are done depending on the product, I was passing 'product_id' in the context but the method product_id_change throws out the entire context to replace it with something containing only 'lang' and 'partner_id' ignoring any other context key/value pairs that could've been in context.