title: StructureMap - Configure default type for plugin, but can be overridden?
body: <p>I have a requirement where I'd like to configure a plugin for an interface to always be a default type, but allow another assembly's configuration of that same plugin always take precedence.</p>
  
  <p>So say I have MyAssembly.dll, which has a registry that sets this up:
  <code>For&lt;IBar&gt;().Use&lt;BarImpl&gt;();</code></p>
  
  <p>If a particular client needs a different functionality, I want to drop MyAssembly.CustomerA.dll into the bin folder of the application.  Its registry will be similar:
  <code>For&lt;IBar&gt;().Use&lt;CustomerABarImpl&gt;();</code></p>
  
  <p>The configuration in in MyAssembly.CustomerA.dll should ALWAYS override the configuration.</p>
  
  <p>I've read that profiles can do this, but that seems to imply I need to set which profile the application should use.  I'd rather not if I can; the presense of the MyAssembly.CustomerA.dll should be enough.</p>
  
  <p>Now, this question is similar:  <a href="https://stackoverflow.com/questions/2805938/using-structuremap-when-a-default-concrete-type-is-defined-in-one-registry-can">Using StructureMap, when a default concrete type is defined in one registry, can it be redefined in another registry?</a></p>
  
  <p>But I don't want to leave it to "whatever StructureMap finds last."</p>
  
  <p>Can this be done?</p>