[FiniteElementMap] Add generic QkLocalFiniteElementMap to replace the current zoo of variants