eltiare/dm-geokit — pull request #2 by fsaravia (2013-09-04 17:28:39+00:00)
Title: Do not validate floats

I have found a strange issue when using dm-validations with lat and lng fields.

DataMapper's dm-validators validates float numbers by converting them to String and comparing them to a regex, the source code is here:
https://github.com/datamapper/dm-validations/blob/release-1.2/lib/dm-validations/validators/numeric_validator.rb#L35-L42
https://github.com/datamapper/dm-validations/blob/release-1.2/lib/dm-validations/validators/numeric_validator.rb#L92

There are two issues with this validation method
1) Some geocoders (in my particular case Google3Geocoder) return latitude and longitude values with a higher scale than 12
2) Float numbers can be rounded, byt they are prone to some really weird issues when going throught dm's validation method:

```ruby
irb(main):032:0> n = -65.4115689
=> -65.4115689
irb(main):033:0> n.to_d.to_s('F')
=> "-65.41156890000001"
```

Since most database providers (in my case MySQL) automatically round Float numbers to the specified precision, I think is better to set auto_validate = false on latitude and longitude fields when dm-validations has been required.

Tests are ok