WebP support

Encoding performance isn't as good as JPEG (about 3-7x slower). Decoding performance is on par with JPEG and PNG.