This looks awesome, but I encountered several errors when trying to run it:
ERROR: loadsourcecode: Condition ' err ' is true. returned: err
At: modules/gdscript/gdscript.cpp:792
ERROR: load: Condition ' err != OK ' is true. returned: RES()
At: modules/gdscript/gdscript.cpp:1856
ERROR: Failed loading resource: res://Astroid/AstroidHandler.gd
At: core/io/resourceloader.cpp:186
ERROR: poll: res://MainShtuff/Main.tscn:10 - Parse Error: [extresource] referenced nonexistent resource at: res://Astroid/AstroidHandler.gd
Maybe I can glean something from your node structure and code...