render whether ray intersects with shape
introduce Intersection type
add surface-integrator 'primary'
merge with origin::master