Add a virtual accessor for number of charges.
Revert iuse helper functions to returning bool.
Convert iuse return value from weird bool-like thing to returning the number of charges to deduct.