Parse six digit dates correctly

With the new Date Facet added in 3376192, Ruby's `Date.parse` method was
parsing six digit dates the wrong way round, so 25/09/14 would be parsed
as 14th September 2025.

This commit adds a `DateParser` class which subs the 5 or 6 digit format
date and pads out the year with 20 if needed and then parses it.