> > +            # Set up the GaussianDeviate if not provided one, or check that the user-provided one
> > +            # is of a valid type.
> > +            if rng == None:
> > +                gaussian_deviate = galsim.GaussianDeviate()
> > +            elif isinstance(rng,galsim.GaussianDeviate):
> > +                gaussian_deviate = rng
> That is a good catch, must remember that...
> 

Actually, it just occurred to me to wonder if this could come up elsewhere, and I think the answer is yes:
* line 709 in base.py (drawShoot method)
* line 2042 in base.py (RealGalaxy)
* line 305 in lensing.py
* line 324 in real.py
(All line numbers are for the versions on this branch.)

Is there any reason these are actually okay?  I think the answer is no, so I'm going to change them (you should see all of those changes in a commit in a few minutes), but I also wonder whether there is some obvious unit test we should have been doing to catch this.