BUG Fixed handling of numbers in certain locales.

Fixes #2161

@lekoala, @jurriaan, @andrelohmann 

Do you like this solution?

Credit to @andrelohmann for beginning this solution.
Yeah there are some problems with this PR, so I'm going to close it for now.

The main problem is that NumericField::setValue is used to set both the field from the DB (which is in en_us format string) as well as the posted form value.

If `11,001`  is posted back when in the de_DE locale, it should be interpreted as 11.001 (11 and 0.1%), but the field doesn't know which locale to consider the value as. The next time the record would be loaded in the CMS, the ORM would pass in the string '11.001', which actually means 11 thousand and 1 in German. :)

If there was a setDataValue to compliment the dataValue method it woudn't be a problem.

Will look at solutions, but it might be worth moving this fix to either 3.2 or 4.0 if we need to alter this behaviour.