Good start panthro,
You could salt the hash in a couple of ways:
Point two could be more interesting, since it would stop the collision case in Aranxo's answer where two MD5 hashes collide at the same time, making the timestamps equal (down to the lowest integer) and the MD5 hashes equal.
HPC might see this use case for large(n) file storage requests.
Also, point two would implicitly enforce a character limit on the filename length, which could prevent malicious or accidental failures on the system.
Salting the hash more, with perhaps additional metadata like IP where the request was made, or even the username if the user agrees to this in a Privacy Policy.