Fix group-scheme bug with changing LJ parameters in FE

We don't optimize for the case when we have only changed one of charge
or type, so the other vector must always be valid even when it is not
changing. The logic of calling ewald_LRcorrection didn't do this
correctly, perhaps because the construction logic in md2atoms was
unclear.

Changed name, origin and logic for bFreeEnergy to
bHaveChargeOrTypePerturbed to better reflect the correct usage and
meaning. Avoided testing any pointers for NULL - we should use
explicit control-flow constructs.

Fixes #1596

Change-Id: I61172681048075d3022bd6c4b781c6c9153eeadd
Fixed pull coord init with rate!=0, t_start!=0

When the start time of a simulation is non-zero a pull setup with
coordinates with rate!=0 and pull-start, grompp would generate
incorrect pull init reference values.
Also fixed the layout of the grompp pull coord information table.

Change-Id: I992a40b098853aba0922ec1d596430eb229d64a8