[Issue #1] Refactor the remote image service.