Move OPACITY_STEPS to the list of constants at the top of the file.
  Pull the step function out of the event handling function.
  Improve comments