Add support for charges for GPUNEP

When using qNEP models GPUNEP can in principle return the charges. This requires amending the GPUNEP calculator, adding charges and born_effective_charges to the implemented_properties, and the adding functionality for extracting these quantities from the GPUMD output.