Time-multiplex execution

I was allowing two nodes to run on the same tile at the same time,
which is invalid.  This prevents that from happening.
Take into account communication distance

This has a simple, congestion-free timing model for communication.
Allow running without an output

This isn't so useful in and of itself, but it's at least something.
Add --print-ii

This prints the initiation interval to the commandline right before
exiting.