add function getForwardedValue, refactor foreach

- add opposite function of forward
- use new getForwardedValue in ForEach
cleanup functor which has used RefWrapper

 delete all explicit RefWrapper in functor signatures
change usage ref,byRef to forward
change year, add pragma once
adjust laser calculation: enable elliptic shape
adjust param files for elliptic wavepacket laser
change comments

- thanks to @f-schmitt-zih
refactor currentSolver

- change template parameter of solver
- add Solver.def and Solver.hpp to include all Solvers
- add CurrentVillaBune.def and Esirkepov.def to splitt implementation and forward declaration
change currentConfig.unitless

- use new Solver.def and Solver.hpp includes
- update template arguments for solver
Merge pull request #436 from psychocoderHPC/topic-refactorCurrentSolver

refactor current solver
Merge pull request #434 from PrometheusPi/laserWavepacketEllipse

Laser wavepacket ellipse
fix #267 valgrid errors

fix out of memory access
simplify dump methodi, use new instead of malloc
Merge pull request #427 from psychocoderHPC/topic-refactorForEach

 refactor forEach
change memory.pram files

- add SuperCellSize
- delete TILE_* defines
- add MappingDesc definition
change memory.unitless

- delete TILE_SIZE definition
- delete tile_size ConstVector
delete MappingDesc

MappingDesc is now defined in memory.param
move memory.param to second position
add missing types to includes

- include ConstVector.hpp
- include compile-time/UInt.hpp
fix direct inlcude of vector classes

- fix that we include `math/vector/compile-time/*` direct and not over the include wrapper math/Vector.hpp
- delete multi includes of vector in the same file