image layer as derived imagebuffer and imagelayerinterface now