silo: add gitignore for binaries.
fopen: ignore read-only opens.

... can get us into a loop, if we fopen inside the freeprocessor.
fix allocation type for writelist aiocb pointers.
debug: make sure we can't shift too much.
check for impossible behavior... just to be sure.

also code might change and I would definitely forget to go back to
this.
netz: make the clang analyzer happy via asserts.

it was complaining of conditions that couldn't possible happen;
the assertions shut it up at least.  they are probably a good
idea, as well.