Split charge handling from module into separate mixin