cleaned up operations on images, introduced new Image box which ensures image isn't null