ip: exclude "don't fragment" bit from ipv4 reassembly test

other operating systems always set the "don't fragment" bit
in ther outgoing ipv4 packets causing us to unnecesarily
call ip4reassemble() looking for a fragment reassembly queue.

the change excludes the "don't fragment" bit from the test
so we now call ip4reassemble() only when the "more fragmens"
bit is set or a fragment offset other than zero is given.

this optimization was discovered from akaros.
ape: add fprint %z format (thanks Ori_B)
pc, pc64: include PCArch.id in #P/archctl simplify #P/ioalloc read handler
pc, pc64, xen: simplify #P/irqalloc
sdvirtio: move common "queue i/o and wait" code into vqio() function, handle notify suppression
pc, pc64: fix intrdisable() to remove the Vctl entry even tho we can't disable the interrupt on apic
sdvirtio: provide enable() and disable() functions so it can be switched off
pc, pc64, xen: change return type of intrdisable() to void

intrdisable() will always be able to unregister the interrupt
now, so there is no reason to have it return an error value.

all drivers except uart8250 already assumed it to never fail
and theres no need to maintain that complexity.
rc-httpd(8): add HISTORY to man page
fortunes: if(~ $i (seek _nsec)) {		# untested so far - geoff