Proposal for template-haskell: Make Q an instance of Applicative