Added new rules for deciding which list to take.

Will take:
1. remote if local is empty
2. local if difference between it and remote is less than 5 items
3. user chosen one if none of the above apply.

Also saves whichever list is chosen
Checking errors in reading of remote file list

Will print to log
Limit amount of spawned threads to 5