In-process, in-memory message bus / router component in C#