Validate price maximum.

Price is constrained to be precision: 8, scale: 2 at the database level, but
that validation isn't reflected in the model.

This will lead to errors when prices are 1,000,000 or above, which is a lot in
USD, but 1 million Vietnamese Dongs is less than $50 USD.
>   I think that sort of functionality is best left for validations.

You mean we should add a normal validation error instead of raising like that? I'd totally agree