net: clean up mq definition, receive buf size.

1) Instead of using N-1 everywhere, use N, and start receiveq etc at 1.
   This is less C like, but less confusing in english.
2) Weaken requirements for automatic steering to SHOULD, as otherwise
   we're insisting device record all flows forever.
3) Receive buffers must be able to hold data, so must be > header.

Signed-off-by: Rusty Russell <rusty@au1.ibm.com>
block: deprecate FLUSH_OUT.

Signed-off-by: Rusty Russell <rusty@au1.ibm.com>
net: make num_buffers field compulsory.

Signed-off-by: Rusty Russell <rusty@au1.ibm.com>
VIRTIO-60: avoid vring and VIRTIO_RING.

These are never introduced, so use simpler names: virtq* for structures
and VIRTIO_ for features.

I added two notes about the old names, for helping people coming from
the old spec.

Signed-off-by: Rusty Russell <rusty@au1.ibm.com>