Make `Ray` a case class