Rewrote the upload and mirror classes as well as other modifications