Minor refactor before branching into Charge model