Adjusted the Java compatibility level of all projects to 1.6

The Coqoon core and Coqoon UI projects had inadvertently been given an
unnecessary dependency on Java 7 when they were created
Require that the ICoqScriptSentence.getText method return a Substring
Removed the FunctionIterator class and its companion object

This class was only being used to retrieve the contents of text files, but
it wasn't terribly good at doing that (amongst other problems, it was
causing Windows line feeds to be silently discarded). Accordingly, this
commit replaces it by adding a new TotalReader object
Added a new command for jumping to the declaration of an identifier

This is very much a prototype of this functionality -- there's no index, so
there's no support for external identifiers
CoqModelImpl.toCoqElement should never return ICoqPackageFragmentRoots

ICoqPackageFragmentRoots can't be used to retrieve ICoqFiles, so it's not
actually useful to return them from this method
Added another classifier for Ltac sentences
Added support for Ltac and Definition sentence tags to CoqVernacFileImpl
Added support for jumping to Ltac and Definition sentences
Refactored the CoqoonMakefile generation code

Three Makefile fragments are now produced by the builder: the first defines
the project dependencies, the second defines machine-specific
configuration, and the third is a template for that configuration