finish off all low-level plumbing for network play
rest of commit I meant to do before
merged