add Futures.get() as a shortcut for .wait(); .value (like the wait method used to be)
had a false-positive in automatic Dependent creation

technically, an empty list satisfies
`all(isinstance(v, Future) for v in value)`, but that doesn't mean it's
a list of replacement futures
private names
futures.wait_all function
Hub.publish_udp() for sending a publish message over UDP. yay!