Feature/viewer partials

Closes #19 - implements the small image viewer.  New tickets will be created for other viewers as necessary (though I think #23 might cover this...?)