Parser no longer registers subprograms with errors

Just what was I thinking?
Handshake now doesn't involve sending scripts.
Add mount command.

Mount allows to 'mount' external (real-life) directories as in-game
dirs. It only works on subdirs of (RL) pwd (for the sake of our sanity).
It doesn't do much yet, but does track the changes.

This means that if I modify/add/delete a file while the game is running,
I'll be able to use the changes in the game.

Caveats: don't mount a dir in a mounted dir. The computer won't explode,
but the inner mounting is lost whenever the outer is refreshed. Yeah, it's
naive, but we can call it undefined behaviour.

Also, the automatic refresh is called merely by the string_to_path, and
nothing guarantees that every relevant part calls it, so it's a big fat
TODO to write getters/setters (inserters, deleters) for Dir.
Add mounted_files. Fix path problems.

Mounted files can be read.

Oh boy, I created a monster.
Same parser can be restarted for another file.
Server funs want Packet instead of string.

Maybe less pretty, way more flexible.
Add compile function.

Usage: compile <path>*

It's not perfect by any mean (the code is a real mess, with a terrible
amount of tight coupling introduced), and it doesn't even really get
the job done, but it's a start.

Theoretically we'll be able to register scripts while playing :)
Freezing_return allows output.
Reply to guiterminal removes waiting message.
Cat checks for exceptions when reading files.
Add autoexec. Add 'command' command.

Terminal constructor automatically tries to mount the boot subdir.
Game now automatically boots from /boot/autoexec
Smallfix: textbox now displays tabs.
Merge branch 'scriptsend'