Implementing some of John Arne Birkeland's suggestions to improve the stability of the PPM stream.  Still need to make the PPM array volatile, but getting closer.  This is also a bug fix as the PPM stream wasn't working at all in the last commit.