Implemented Bug 1, Currently Untested

Still needs a proper raycast function to work