Basic upload functionality