Add a third parameter to be_sanitize_date_time(), $accepts_string, for whether the calling argument check can accept a string.

This would only work as a fallback for the 'date', 'date_query_before' or 'date_query_after' attributes. The 'date' argument simply serves as a quick shortcut to defining the 'year', 'month', and 'day' arguments for any given date_query array.