refactored the Vec to Vec3 and added a Vec2 datastructure
fixed the triangle intersection function a little bit