using real image endpoints, so browser caching works. lots of ui improvements