Fix #137:  default key based on filename.

When no key is passed, guess it based on the basename of filename.
Merge pull request #191 from tseaver/137-upload_file-guess_key_based_on_filename

Fix #137:  default key based on filename.