fetch and cache images