Add registry extension mechanism to codebase

This component is required because it is not always possible to
configure the behavior of the IDE just with XML files.

In the present case, wizard elements defined by the fileCreator extension
point must be added to the platform. Because the fileCreator extension
point is completely independent from the newWizard extension point,
there doesn't seem to be an easier way to hook the additional components
into the platform than by using reflection.

The new `RegistryExtender` component implements this extension behavior.
It is important that this component is called on startup of the Scala
IDE bundle, otherwise it may be loaded to late and some Eclipse
components have already cached some registry entries, which may be
changed by this `RegistryExtender`.
Update shown wizards in Scala perspective

All changes done to a `IPerspectiveFactory` can only be seen when a new
perspective is created, which means that the changes done by this commit
don't have any effects to users that already use the Scala IDE.

Eclipse doesn't seem to support a way to remove and recreate a
perspective when the corresponding bundle is still installed in the
Platform. Therefore users first have to remove the Scala IDE bundle,
then delete the Scala perspective if it is not automatically removed and
finally install the new Scala IDE bundle.
Update `CreateClassProposal` to open `NewFileWizard`

The old wizards will be removed in future, therefore this class needs to
open the `NewFileWizard`.
Remove old wizards

They are replaced by the `NewFileWizard`. The only wizard that is kept
is the new project wizard because this one works totally fine.
Fix problem with incorrectly updated editor area in `NewFileWizard`

Previously the editor was opened and immediately after the opening was
triggered the editor contents were touched by the `NewFileWizard` to
insert the content of the template. Sometimes this lead to an
incorrectly updated editor area - the content was simply not correctly
displayed.
This is fixed by first touching the content and then opening the editor.
Open editor even when the underlying file is not in a source directory

When a file exists outside of a source directory one can't use an
`IFile` to open it, because they work only for files in source
directories. The alternative is to use the URI of the file and open it
with the default text editor.