title: Find an item inside a List<T> by providing a sample object instance
body: <p>Why is there a <code>List&lt;T&gt;.Contains(T)</code> method but no <code>List&lt;T&gt;.Find(T)</code> method? Only the <code>Find</code>s that support predicates are supported. If we have an existing instance of T populated with a property value for its ID (but missing other properties) why can't we search by providing this object instance to the search in <code>List</code>, especially when we have implemented custom <code>IEquatable&lt;T&gt;</code> for <code>T</code> and would like to use what's there. But as it is, we can't, we have to repeat everything that we did in <code>IEquatable</code> implementation in our <code>Find(predicate)</code> call.</p>