Fix regression in file extension

We were appending a file extension and then throwing it away since some refactoring. Oops!
Name uniqueness checking

Follows sequence 'Foo.jpeg', 'Foo 2.jpeg', 'Foo 3.jpeg' etc until one is
found that doesn't exist, then we send up the upload. This avoids most
typical conflicts scenarios.

Still can produce a conflict if you start uploads near-simultaneously,
but this is better than none.
Merge pull request #17 from brion/namecheck

Name uniqueness check & extension fix