ISPN-3807 Cache the result of HQL query parser to be reused

Use a local cache with expiring entries to store the result of the HQL parsing and reuse it
if same query is executed.

Jira: https://issues.jboss.org/browse/ISPN-3807
Is there any chance of colision with LuceneQueryParsingResult objects in case I am doing indexed and unindexed queries at the same time (on different caches)?