Add iterators to underlying qlist in flow layout
Replace old style loop with c++11 range for loop
Merge branch 'dev' into working_container_iterators
Add observer_ptr wrapper for raw pointers
Replace framesToSave with ThumbnailContainer accessor methods

This commit replaces a container in MainWindow that was used
to keep track of all frames in savedWidget ThumbnailContainer.
Refactor with smart pointers
Prevent generator from starting if it's already running
Disable Generate button when generator is running
Replace lastReceivedFrame with container widget accessor

lastReceivedFrame was used to keep track of the last frame
that was generated so that we could jump to it, but with the
widget accessor member function in ThumbnailContainers
we can just get rid of that.
Replace includes with forward declarations
Fix compile errors
Add constness and minor changes
Check last progress value in dvdprocessor against last value

DGIndex can sometimes return smaller values than expected
in its output which is why we should check it before
emitting these wrong values and avoiding the check in other code
Remove an unnecessary variable by re-ordering code
Change comment and warning text
Replace using statement with namespace qualification
Use zero-indexing for video frame grabber

And remove the static FirstFrame from video frame grabber header
Replace lastRequestedFrame variable with grabber's lastFrame()

Replace the lastRequestedFrame member variable in MainWindow
that tracked the frame where we can jump if the script is
updated with video frame grabber's lastFrame() method.

Also fix a possibly misbehaving setVideoSource in the grabber.

We also had to change a couple of the queued connection requests
to the frame grabber with blocking calls so that the lastFrame()
functions return the correct frame number without explicit increments.

The queued connection in seekSlider_valueChanged was changed to
a blocking call so that the UI doesn't change out of sync (too early).
Remove constructor from video grabber that doesn't accept video source
Verify the video source pointer set via setVideoSource
and throw exception if nullptr