Added a new base class for TabFolder-based goal presenters

Both DefaultGoalPresenter and TabularGoalPresenter are now subclasses of
this new class, cutting down on code duplication -- and paving the way for
sash support
Added support for sash-based goal presenters

This commit also converts the two existing goal presenters to use a sash
Don't use the ITextEditor.selectAndReveal operation to reveal text

CoqEditor now exposes its internal ISourceViewer, which allows a simple
reveal to be performed. This gives better cursor positioning behaviour