reorg: scripting + network

Scripting: revamp scripting to use generic byte slices for everything, instead of 8-byte "values." This allows some functions to be cleaned up, because large arguments can be pushed onto the stack instead of stored in registers. (However, the functions in question are all commented out for the time being.)

Network: close the TCP connection if ping fails, and add a proper Ping RPC, which pings individual participants instead of just the hostname + port.

Finally, the code layout doc has been replaced with a dependency graph. The graph omits a few connections (and the client/server entirely) for simplicity, but overall it is a much more accurate representation of the code base.