Mainly some changes to the Image class. Now every manipulation is kept in memory and not written to disk immediately. It's needed to call the new Image::save() method for the changes to take effect