Bug fixed on adaptive upwinding

* New instance variable self.d0 which is the unaltered diffusion
coefficient, all adaptive upwinding is calculated with respect
to this variable.

* The exponential fitting term is calculated in a more careful
manner. To avoid inf/inf = nan. In the limit of peclet number
going to infinity the ratio should tend to 1, not give a nan.

* Added a method which updates the velocity profile recalculates
adaptive upwinding.
Fixed bugs in calculating kappa

* Needed to replaced np.exp(mu) - 1 with np.expm1(mu) to that the
denominator was calculated correctly.

* Added an additional catch for nans (should really need this)
Added 2 new test function based on the Poisson equation.