Upgrade so can run distributed and files will only be processed on one server at a time.

At the moment the first server that sees new files will pick them up, even if it is already processing something, meaning it might not be the most efficient solution across servers as some might be left processing nothing whilst others are processing a few (until they reach their thread limit).

This can be solved by adding another table 'server_jobs' which could contain 'id', 'server_id', 'file_id' records for files that are currently being processed, or something along those lines.

This update also includes support for child files to be source files.