Fixed virial when biasing ENERGY

Virial was not scaled together with forces. The contribution is not
negligible, and I verified it is correct by testing with gromacs
a box of water in NPT and biasing the energy, then comparing the
-kt*log(histogram) biased and unbiased. It seems after this fix agreement
is much better
Fixed time units in quantum espresso

In PW, they use Ry units instead of Ha units, which leads
to a factor 2 in time. I realized it looking at the output of
espresso, where time is written also in ps. Now colvar and
output are consistent.
Fixed detection of MD codes

Currently the .diff file is compulsory, the .config is not. So, the list
of MD codes should be built looking at .diff files
Passing virial back to quantum espresso (fixes #3)

I had to change the place plugin_forces is called in espresso.
This is because in the original implementation plugin_forces
was called *before* stress calculation.
I did some qualitative test, but I am not able to run a proper
thermostated variable cell simulation with QE. Probably will
require some extra validation by QE guys.

I also updated qe version to 5.0.2
Merge branch 'v2.0'