title: Duplicates as a relationship
body: <p>I have a model called <code>debtors</code>. I'd like to have a relationship for all other debtors with the same <code>phone_home</code> and <code>phone_work</code> attributes.</p>
  
  <p>I know I can do this:</p>
  
  <pre><code>public function dupes_phone_home()
  {
      return $this-&gt;hasMany('App\Debtor', 'phone_home', 'phone_home');
  }
  
  public function dupes_phone_work()
  {
      return $this-&gt;hasMany('App\Debtor', 'phone_work', 'phone_work');
  }
  </code></pre>
  
  <p>How can I merge these two relationships into one so it can be used in eager loading, etc.?</p>
  
  <p><strong>Edit:</strong> example of what I want:</p>
  
  <pre><code>$debtor1 = Debtor::create([
      'name' =&gt; 'Joe Blow',
      'phone_home' =&gt; '123',
      'phone_work' =&gt; '456',
  ]);
  
  $debtor2 = Debtor::create([
      'name' =&gt; 'Joe Blow Dupe 1',
      'phone_home' =&gt; '123',
      'phone_work' =&gt; '789',
  ]);
  
  $debtor3 = Debtor::create([
      'name' =&gt; 'Joe Blow Dupe 2',
      'phone_home' =&gt; null,
      'phone_work' =&gt; '456',
  ]);
  
  $joe_with_dupes = Debtor::with('dupes')-&gt;get()-&gt;toArray();
  </code></pre>
  
  <p>Would give me something like:</p>
  
  <pre><code>[
      'name' =&gt; 'Joe Blow',
      'phone_home' =&gt; '123',
      'phone_work' =&gt; '456',
      'dupes' =&gt; [
          [       
              'name' =&gt; 'Joe Blow Dupe 1',
              'phone_home' =&gt; '123',
              'phone_work' =&gt; '789',
          ],
          [       
              'name' =&gt; 'Joe Blow Dupe 2',
              'phone_home' =&gt; null,
              'phone_work' =&gt; '456',
          ],
      ],
  ],
  [
      'name' =&gt; 'Joe Blow Dupe 1',
      'phone_home' =&gt; '123',
      'phone_work' =&gt; '789',
      'dupes' =&gt; [
          [       
              'name' =&gt; 'Joe Blow',
              'phone_home' =&gt; '123',
              'phone_work' =&gt; '456',
          ],
      ],
  ],
  ...
  </code></pre>