added image upload, still has bugs