On the windsor page about registering components by convention (http://docs.castleproject.org/Windsor.Registering-components-by-conventions.ashx) the following code snippet should help you:
container.Register(
Classes.FromAssembly(Assembly.GetExecutingAssembly())
.BasedOn<ICommon>()
.LifestyleTransient()
.Configure(component => component.Named(component.Implementation.FullName + "XYZ"))
);
By the way, why don't you change your componentselector to select the correct handler based on implementation type ?
Kind regards, Marwijn.