internal energy calculation introduced.

The internal energy of the problem is evaluated using information from the
impurity problem only, so that user is not bothered by performing any additional
calculation.

Potential energy contribution is evaluated as:
<Hi>=Tr[ H_interacting ]
where H_interacting is the part of the model Hamiltonian describing full local interaction,
there including the Hartree terms (e.g. for example if H_interacting = U*(n-1/2)*(n-1/2)
rather than U*n*n).

Kinetic energy contribution is evaluated as:
<K> = Tr{Tr[H(k)*G(k)]} = Tr[Delta*G] + Tr[Eimp*N]
the internal trace being thermal one (sum_{iw,k}), the external one is  over spin-orbital degrees of freedom.
This is easy to check
Tr{ H(k)*G(k) } = -1 + Tr{ (iw + mu - Sigma(iw))*G(k)}
                = -1 + Tr{ (iw + mu - G0^-1 - Gimp)*G(k)}
		= -1 + Tr{ (Delta + Eimp - Gimp)*G(k)}
We separated the Eimp contribution (<E0>) from <K>, so that
<K> = Tr[Delta*Gimp]

The other terms are evaluated from thermal averages of suitable terms.

testing: a simple test has shown very good agreement with former results for the
1-band Bethe Hubbard model. More tests are in order.

The introduction of Energy calculations required to move the impurity Green's function
outside the ED_GREENS_FUNCTIONS module, so I opted to put them in VARS_GLOBAL so to be
able to access the as Self-energies.

With the occasion I updated the code here and there and renamed some functions.
ED_HAMILTONIAN now is unified for both double precision and double complex calculations.
Something similar can be done for the ED_DIAG.