[OPENJPA-2933] Implements new date JPA 3.1 JPQL functions and equivalent Criteria API (#123)

* OPENJPA-2908

* Bumped jakarta persistence API to 3.1.0
* Added necessary stub impl of methods (throws UnsupportedOperationException)
* Tests passes, but actual impls must be made in probably different issues, one for each new features (https://jakarta.ee/specifications/persistence/3.1/jakarta-persistence-spec-3.1#jakarta-persistence-3-1)

* [OPENJPA-2933] Implements LOCAL DATE, LOCAL TIME, LOCAL DATETIME and EXTRACT functions

* Added JPA 3.1 date/time JPQL new functions LOCAL DATE, LOCAL TIME and LOCAL DATETIME and Criteria equivalents
* Added JPQL EXTRACT date/time field and EXTRACT date/time (as a CAST) JPQL functions
* Added tests to verify validity of BNF changes in JPQL.jjt and each new function

* [OPENJPA-2933] Fixing typo and postgresql extract function

* [OPENJPA-2933] Decreasing lookahead instruction of extract for better performance

* [OPENJPA-2933] Finishing implementation

* Updated round function usage and test due a corner case on postgresql tests
* Made EXTRACT function test be resistent to date/time divergence between db and test environments
* Updated manual BNF and Date Time functions chapters
26 files changed