Add the ability to preload slides

This pull request adds pre-loading of slides. It is currently set to preload the next three slides and it waits until the current download is finished before starting the next.