Actually the trick here is to load a Static image first instead of the gif. Once the user clicks the IMg it loads the gif file.
One shortcoming of this might be converting the gif uploaded to a static image.
Otherwise coding the rest of the plugin seems pretty straightforward.