Add minimum and maximum values to number formatter

Without this fix, CPNumberFormatter does not have the ability to check if a number is within a specified minimum/maximum range.

This fix allows the user to set a minimum and maximum value for a formatter. Numbers outside of this range will cause the field to not validate.

This commit includes a new unit test for this behaviour, as well as nib2cib compatibility (previously added but commented out).

NB: For this to work like Cocoa, CPDecimal must accept numbers that begin with leading zeros. A separate pull request (#1828) has been submitted for this.