FileView is now getting somewhat out of hand. The asynchronous parts especially need to be redone, but this will work for now.