Fix alloying failures due to rounding error.

If you try to create bismuth bronze with exactly 500 copper, 300 zinc and
200 bismuth, it will fail due to rounding errors. I've fixed the problem by
having AlloyMetalCompare round all values to the nearest 3 decimal places
before doing the comparison.