Seperate jpg tiff webp

jpg, tiff and webp support will be treat as a module. 
I will update external in another pull request to support webp, tiff and jpg.