Vector Support

This was meant to be just for vector files' support, but some of the key items covered in this pull request are much beyond that.

* Better UI/UX
* Shift to ImageMagick instead of Pillow/PIL
* Use of librsvg for SVG files
* Other random changes
Indent should be with spaces instead of tabs.