Fix various bugs for binary IO support.

Add "binary" as an option in Solution as a reader and correct some bugs concerning reading in aux binary files.  Also cleans some things up in the routines there.

Note that in many of the example `setrun.py` files that the line controlling this output reads
```
rundata.output_format == 'ascii'
```
which is unfortunately always evaluated to `True` and therefore ASCII output.   All the template setrun files in clawutil also have this bug.