Changed `Image` into a trait

Closes https://github.com/PistonDevelopers/rust-graphics/issues/407