Completed functions associated with the Sphere, need to complete the non-recursive ray tracing which will eventually be modified to support recursion in a later step