Raycasting (WORKING WIP 3)

NEEDS AN AMAZINGLY EXTENSIVE CLEANUP.