a Monad for dealing with pixels