Major Surgery Implementing Density Gradients.

Almost all the substantive edits are in cartreinject.
The routine fonefac has been completely disabled and is obsolete.
This rationalizes all the face weighting including rhoinfcalc into
the quantities grein(6). Then the value of grein are adjusted to
reflect the density gradients.

Diamagnetic drifts are implemented by changes to ffdrein and fvdrein.
The one-dimensional versions used for infinite-Bt have also been
updated but do not contain any vdia, because in that case the diamagnetic
drift ought to be negligible.

Density gradients are implemented as constant scale-length. This makes
the position choices separable in different directions.

Various tests check whether the parameter asked for make sense. For example
no density gradient component parallel to B is allowed.

faddu has NOT yet been adjusted to account for the density gradient.
Implementation of correct density gradient detection in faddu.

Hence density gradients appear now to be working ok in empty domains.