Multi-threading upload tool
Looks okay if a bit sloppy with different formatting for some print x
vs. print(x) calls (the latter being preferred really); you probably
should also use
new-style classes,
i.e. class Loader(object):.

Other than that the main concern I'd have is that the semaphore should
be protected against exceptions.  This is mostly a concern for bigger
scripts, but it's a good habit regardless.  Thus, the release method
should be called regardless of whether an exception was raised by
anything else in the thread - otherwise the program could just get stuck
there, which is fine for a one-off script probably.

You should probably also check whether the threading actually does
improve the throughput, considering Pythons global interpreter lock.