Fix variant price validation to allow nil

* The check_price validation already asserts presence, or not depending on
  the system config, and unnecessarily validations are done when
  the master variant price is not required.

I'd like to see this backported to at least 2-3-stable.