Add ParseDatas Class
This class permit to store cities files in an array for future search. All cities where population < ParseDatas::MAX_POPULATIONS are excluded
Add Suggestion class
This class filter cities according parameters
`Suggestion.new(cities, params).results` return results sorted by name
Add score by length.
Here, We comparing the length of the query with the length of the city.
```
London/London = 1
Londo/London = 0.83
Londo/Londonderry = 0.41
```
Sort cities by score descending and by name ascending
Add score by populations because most of the time, users search big cities.
Add score by distance
Here we use `geocoder` gem for calculate distance (using Haversine formula) and transposed to a score between 0 and 1 with:
`1 - distance / (Math::PI*Geocoder::Calculations::EARTH_RADIUS)`
Add `redis` gem
Configure redis
Add limit params