Implement Image Modal as an XBlock

This feature, which previously existed as a Platform HTML template, has
been refactored and revamped into a stand-alone XBlock.

These changes should have a significant effect on client-side
performance, as much of this content had been going across the wire on
every page request. Now, this content will only be loaded on courseware
pages which actually contain an Image Modal.

TODO: The existing image modal code in platform should be removed
_after_ this merges _and_ all previously existing instances have been
converted.