NModule is a role-based plugin architecture for .NET