title: AutoFixture Likeness - compare only matching properties
body: <p>I want to be able to compare the two following objects for likeness using AutoFixture.SemanticComparison:</p>
  
  <pre><code>public class Object1
  {
    public int a;
  }
  
  public class Object2
  {
    public int a;
    public int b;
  }
  </code></pre>
  
  <p>Now, when I do it this way:</p>
  
  <pre><code>var o1 = new Object1 { a = 1 };
  var o2 = new Object2 { a = 1, b = 2};
  o1.AsSource().OfLikeness&lt;Object2&gt;().ShouldEqual(o2);
  </code></pre>
  
  <p>I get the following exception: "The following members did not match: - b."</p>
  
  <p>I found out that I can omit the 'b' member like this:</p>
  
  <pre><code>var o1 = new Object1 { a = 1 };
  var o2 = new Object2 { a = 1, b = 2};
  o1.AsSource().OfLikeness&lt;Object2&gt;().Without(object2 =&gt; object2.b).ShouldEqual(o2);
  </code></pre>
  
  <p>However, I find that this is quite cumbersome, because whenever I add a new member to class Object2, I have to correct my unit tests (or at least unit test helpers). </p>
  
  <p>Is there a way to say "I want to compare for likeness just for the subset that exists in both objects"?</p>