Port over a rough, but working, copy of Image.