Merged upstream
Completed until part 4
Completed Part 4 and organized files
Part 4 Tweak: default image for failed GET request