simplify charge computation

Method CoreSimTrack::charge() is visible in CPU profiler. Because of that it is re-written, data structure itself is not changed.

Constructors are cleaned up - all members of classes are initialized, unnecessary vectors are not created at construction.