First commit of the bulk of the image classes. This is still a work in progress.