Fixed "get file-size" bug for file handles in `upload_file()` (get file-size *after* converting filepaths and file-handles, and get file-size using `os.fstat(fh.fileno()).st_size`.
Added more universal file-like object size check (fh.fileno() throws AttributeError on StringIO objects). It sounds like there are some file-like objects that are unseekable, but I have been unsuccessful in tracking down which ones exactly. This fix should be good enough for most cases, and we can update it once we come across file-like objects that are not seekable.
Allow for ":" in argument values (only split args on first occurence of ":".
Added iacli.argparser test.