Always create a visualization output after restart if interval is set to 0

I have a slight issue with the way the visualization output works after restarting a model. Currently, we save the next_output_time for the visualization plugin when checkpointing. I have a model where I want to restart the model for a single timestep and get a new visualization output (with different postprocessors / material model). Since the next_output_time is read in from the previous model run and the set_next_output_time() function is always called when restarting, I do not get a visualization output, independent of the value I set for "Time between graphical output". If I set "Time between graphical output" to 0, set_next_output_time() does nothing, and no output is written until the model time is larger than the next_output_time that was loaded from the checkpoint. If I set "Time between graphical output" to a small value (smaller than the next time step size), set_next_output_time() is called before postprocessing and prevents any visualization output for this first timestep after the restart. 

This PR creates a visualization output in every timestep (even after restarting) if the interval is set to 0. 

Would it be a more expected behaviour to simply not save the next output time, and therefore always write a visualization output after restart independent of the newly set interval (like we do in a normal model start)?