Build separate various binary tarballs

Also a bunch of script clean up.  Make make-clean.sh faster and more robust.

Building the docker run images and uploading to GCS are now optional and turned off by default. Doing a release shouldn't hit the network now (I think).
I think I want to leave these as separate for now.  Over time I think we may want to include other extra non-binary files into these tarballs.  At that point there will be some common boilerplate but the guts will diverge.

Besides, passing arrays as parameters looks a little tricky/ugly in bash.