Make arguments consistent.
Factoring: Split get_output_file() from get_output_files().
Factored time and performance out of file types.
Factored common message pattern into recv_worker_msg_retry.
Factored generation of cached name to a single location outside of get_output_item.
Factored do_thirput out of get_output_file().
Factored get_file from get_file_or_directory.
Cleaned up get_file_or_directory to have a reduced number of failure
cases and use dynamic allocation for constructing names.
Removed sorting of received items, which was broken anyhow.
(t->output_files is a list of struct work_queue_file objects.
filename_comparator was casting each one to a string, then running strcmp,
which gives nonsensical results and a possible future segfault.)
Removed check for duplicate items on output; just keep it simple
and do exactly what the user requests.
Fixed bug in output caching: If the file was successfully received, then put its metadata into the cache table.
Fixed show-stopper in get_file_or_directory: only break out of loop on failure.
Fixed cache leak: when removing a file from the cache, use the cached name instead of the remote name.
Add missing header to ftsh.c
Correct include directive in parser.y
Merge pull request #237 from atomicknight/ftsh_compile_fixes

Fix compilation errors for ftsh.
whitespace
simplify datagram creation
whitespace
On rewind, set the end of the buffer to NUL.