still trying to figure out the image upload error checking - officially giving up now after over 20 hours on 40 lines of code