Added Program and PixelMatrix interfaces, and moved ColorCycle logic from sketch into program