Hi John, this is really great - it's nice to see an overview of all the code you've been working on!
I'd like to see a little bit more text describing what you're doing in the code blocks, right now it's a bit sparse and might be confusing for a casual reader. It would also be great if you added markdown cells in the ipython notebook to match the text in the post. There's also no reason to show all of the debug output yt prints, feel free to cut it down and only show the bits that help illustrate your point.
I would also mention that the particles callback displays all of the particles within a thick slab. This explains the slight mismatch between the particles and your ParticleGasDensity field in the plots at the end. Also, I think the field name ParticleGasDensity is a little confusing; why not something like ParticleDensity or (in the spirit of yt-3.0 field names) particle_density_cic?