Revamped code and demo. Precise permissive and recursive shadowcasting now available.