A bunch of futures stuff. Infrastructure to use all of this is in place, but my test program doesn't use it yet.