Included geo.fill in all calculations of tau_sobolev

* made all calculations of the sobolev optical depth explicitly use
the sobolev() function. 
* This involved:
    * changing get_ion_density to use
a general three-vector x rather than the photon pointer
    * declaring
a wind pointer in p_escape
    * changing the second argument of
sobolev to be a three-vector x rather than a PhotPtr. The philosophy
being that you shouldn't a PhotPtr to calculate a tau, just
a position and a line pointer - the example being that we have to calculate
p_escape in cells.

* included a factor of geo.fill in the sobolev() function directly, rather than in calculate_ds. 

This will mean that all taus that are used to calculate line heating, escape probabilities or increment macro-atom estimators should have been multiplied by geo.fill in order to compensate for the increased densities, and thus for fixed ionization and temperature should give the same values a non-clumped model. In practice, the cells will have adopted a different temperature and ionization solution and the results will be different.

See #108 for more discussion