Textures are just `Material a` combinators concerned with producing stuff at hit points.
Since the Material is a Monad now, no need for special cases for colors and then another bunch of combinators for materials.
A sampler can be used to pick entire materials if needed.
(Ooops, I actually CPSd a little...)
@pmidden Translating "Ray tracing: the next week" book code to Haskell
@dpwiz oh wow, sounds very interesting!
@dpwiz what are you working on?