add assign method to CT::Vector

add method to assign a new type to a component of the CT::Vector
create combination tupel from vectors

this class generate all tupel cobination out auf nested vectors
refactor ShiftCoordinateSystem

- refactor ShiftCoordinateSystem that we has well defined states of the new coordinate system
- add functionality that every dimension can have its on defined particle shape support
update documentation

- thanks to @Ax3l and @f-schmitt-zih
Merge pull request #414 from psychocoderHPC/topic-refactorShiftCoordinateSystem

Topic refactor shift coordinate system