Force the creation of output folders

It seems that, when importing projects, resources which exist on the
filesystem might not yet exist in the Eclipse workspace. This commit stops
that from being a problem
Removed the "prefix" attribute from the load path provider extension point

All load path providers are now queried for all identifiers; that API is
about to change to make it possible to return more nuanced answers, though
Extended the AbstractLoadPathProvider interface

Providers now return implementations for a given abstract load path. These
might or might not actually work, depending on lots of external factors,
but now they have some way of indicating what might be wrong with them
Changed the way the load path configuration UI presents load path providers

Providers are now treated as parent elements, with the implementations they
provide displayed as children -- unless they only have one implementation,
in which case that's just shown directly
Show error messages when abstract load path providers don't work

In future, this bit of the UI might even offer some way of fixing these
problems -- but, for now, just reporting them is a good start
Abstract load path implementations should be able to return their provider

Implementations are essentially supposed to be lightweight handles to
(potential) libraries. Anything more complicated than that, like actually
installing libraries, should be managed by providers
Added some more safety checks to CoqAutoEditStrategy

For boring technical reasons, events with an offset of 0 were causing
strange things to happen, so those are now handled specially; events
happening past the end of the document will now also be removed
Allow offsets to be set and retrieved for certain kinds of scanner
Generalised the Coq partition scanner a bit

It should eventually be possible to recognise Java partitions using this
newly-general infrastructure, and thereby to add support for using Coqoon
services within Java editors
Added a missing wildcard to the model's classification code

Mysteriously, Scala 2.10 accepts this code, even though it was obviously
broken. Scala 2.11, however, complains, and it was quite right to do so
The Coq scanner classes shouldn't be singletons

These classes aren't actually stateless -- they inherit piles of state from
RuleBasedScanner! As a consequence, damaged regions were very likely to be
associated with completely incorrect documents when more than one file at a
time was open, which in turn caused many other errors
Tidied up the labels and captions of the load path configuration wizards