could we extract this into a method parseCastLiteral?

and rename parseLiteral to parseUncastLiteral - to make names match the spec? and from the grammar, we should be able to use parseUncastLiteral from within parseCastLiteral, with a flag to disable automated date detection. that should reduce the code duplication about the quote and all that.