some basic support for video processing

Adds some classes for dealing with videos by reading them into memory, adds both a gallery and format for reading/writing video (the format treats a video as a single template, the gallery treats a video as a set of templates)