Second order central difference
Adds second order central difference in python and c++, accessible via CPUNEP. Fixes #71
Example usage:
gradient_second_cpp = calc.get_dipole_gradient(
displacement=1e-2, method='second order central difference', charge=2.0
)