Stylistic changes
Fix a comment
BindableCollection: don't dispatch to the UI thread if there are no subscribers
PropertyChangedBase: don't fire the event if someone unsubscribed while we were dispatching
StyletIoC: Speed up GetAll calls slightly
Move ShowMessageBox onto the IWindowManager

Having it as an extension method is good architecturally, but make it harder
to change its behaviour. This way, users can override it easily if they wish.

This also means that the WindowManager does not depend on the IoC service
locator, insteady accepting a Func<IMessageBoxViewModel>
Remove unnecessary Bootstrapper constructor
ViewManager no longer depends on IoC
Move IContainer's extension methods onto IContainer

This means people with an IContainer, but who haven't included StyletIoC,
don't get confused
Remove the IoC class in its entirety - it's not needed any more, and it's a bad idea
Remove AssemblySource, relying instead on a List<Assembly> on BootstrapperBase
Add Bootstrappers solution, with Ninject and Autofac bootstrappers and tests
Rename MessageBox.cs -> MessageBoxViewModel.cs, as that's now all it contains
Add bootstrappers for Castle Windsor, StructureMap, and Unity