FTP client (utils.ftp) and Depot testing

FTP client designed to be used for log depot testing but it can be used for anything.
I also added automatic negotiation of the time difference between the local and remote computer, so it can be used for precise testing of the time when were certain files uploaded.

More info in docstrings.
smyers's fixes for new codebase