Added some comments before making further changes
Replace old markup with Lightbox 2-style markup; image loading returns Promise
Add broken image handling; better code org; new demo index page; styling tweaks