this isn't neobot. A different structure does not make it worse. I prefer having it read scripts from the folder. I like to have syntax coloring and honestly making an entire IDE inside the client is not something Nick should waste his time on.
If you take a look at my alternative walker I do use labels as function names so you can call functions straight from the walker. That's the closest you will get.