Added a Coq tactic plug-in which sleeps for a specified period of time

This should prove useful as a way of simulating complex computations. (I've
been hoping for something like this for a while: it would have made
interrupt support much easier to test all those years ago...)
Pass the list of changed commands to the PIDE Coq editor's update method

Although the method doesn't use this list yet, it will shortly, which will
bring with it performance and reliability benefits
The PIDE Coq editor annotation code should only operate on changed commands

This commit also gives the PIDE Coq editor the ability to distinguish
between commands that are still in the document and commands that have been
removed, which will soon be used to improve performance
Create, modify and remove PIDE progress annotations more sensibly

Annotations are now only manipulated when PIDE reports that their
associated commands have changed
Added more null reference checks to the PIDE Coq editor annotation code

Null references are quite likely to be present during the editor shutdown
phase, so we should handle them gracefully instead of spamming the console
with exceptions
Don't assume that all Coq source files are part of the model

In particular, .v files outside of recognised source folders have no
corresponding model object, and assuming that one exists leads to a broken
editor showing an incomprehensible error message