Expose SelectionChanged + additional nodes to plugins

When writing an ILSpy plugin (in my case Reflexil), it can be very useful to:

- know when the selected node(s) is changed, so that the plugin can react in sync with the user selection. You already consume SelectionChanged from the TreeView, so we can easily forward this with a SelectionChanged event directly exposed by the MainWindow.

- use the AssemblyReferenceTreeNode node and its AssemblyNameReference object. In my case, Reflexil is able to deal with such objects.

Regards
S.L.