add particle attribute `chargeState`

add species attribute `chargeState`

- attribute can added optional to a species
- if species has `chargeState` it is used in the trait function `getCharge(...)`

**This pull request change the trait `getCharge(...)`