add crunch_scripts/file-select
add zipball_extract
allow caller to override std* pipes in run_command
fix infinite loop in flush_data
use . as default stream name
fix stream names in CollectionWriter
add one-task-per-stream utils
mkdir -p in collection_extract()
fix out of scope function use
fix os.path.dirname usage
add util.listdir_recursive()
overwrite existing files in stream_extract
fix extra empty stream in all_streams() response
maintain directory structure in collection_extract
add CollectionWriter.write_directory_tree()
escape spaces in manifest filenames