Add png support for surface() module (fixes #721).