add the hessian to the morse interaction

Add some tests for morse also
in c++ potential interactions change hessian function

hessian(...) -> energy_gradient_hessian(...)
add hessian to LJCut
undo changes to cython BasePotential
remove an an extern declaration

of a function that won't be called from python
organize Hessian computation with c++ potentials

the core function to compute the hessian is
BasePotential::get_energy_gradient_hessian.  if that is not overloaded
it computes the hessian numerically and
calls get_energy_gradient for the energy and gradient.

BasePotential::get_hessian simply calls get_energy_gradient_hessian and
discards the energy and gradient.
Merge branch 'master' of github.com:smcantab/pele into jake_mc_pr
Merge branch 'jake_mc_pr'