Source control is so fundamental to most projects that it makes sense to integrate it into the SharpDevelop framework. The engine should export an ISourceControlProvider interface for addins to implement. Then any part of the application (or other addins, like search-and-replace) can have a consistent interface to, for example, check files out. Automatically checking out files is currently impossible to implement in an addin- there is no hook for when a file is about to be edited.
There is also a lot of inconsistency in the implementations of the providers- the SVN addin is full-featured with icon overlays, but not the others (last I checked). This interface idea is already used in the IDocumentVersionProvider- I am proposing that it be extended to encompass all operations, and that common ideas (icon status overlays) be implented within SharpDevelop, so that addins can be consistent in features and new addins (e.g. Perforce) can be created easily.