I've been thinking for a while that we should treat R8 as a package format by storing a dictionary of frame -> offset and introducing a syntax for referencing pseudo-files (e.g. requesting DATA.R8@100-150 would return a R8Reader that contains a 50-frame sprite starting at frame 100 from DATA.R8).

That would be way outside the scope of this patch, though.