Work on using a frame rate instead of a fixed run count.

Fix experiment loading.
Clean up.
Fix possible crash.

seekToFrameExtractor can be null when the initialization failed, e.g.,
because of a missing video file.