reworked tunnel construction

Replaced the point struct for tunnel generation with vector3 positions.
This allows us to work many vector calculations on the positional
points.