refactored Raytracer to RaytracerInterface