Todo list
The uploading user-checks (as if a file seems to already exists) need to be improved. So does the format detection (may need to create a new meta-data file that lists the extension which aren't ambiguous).
Multi-user-proof. (Hint : Managing a list of request on server that will be processed one by one. The client should only get the current state of the server and never edit its data itself.)
Upload of .zip for files with dependencies (such as latex file using images).