QueryParser: Fix overzealous conversion of dates to date ranges

BQL supports "2014" as a date, but that conflicts with numbers. Now only
unambiguous dates like "2014-12" are parsed as date ranges immediately. If a
number ends up as the value for a date-typed field, then it is converted into a
date range for that year.