Added if clause to avoid deadlock in Edge case scenario
New class Package that contains checksum value
New class AbstractFileMaster, attempts to make super class for Uploader and Downloader