Reduce uses of get_data() on image model objects

- Enables some interesting possibilities for lazy arrays, large arrays,
  remote arrays, custom image types, etc.