title: expectedFailure is being counted as an error instead of as passed
body: <p>I'm using <code>expectedFailure</code> because there is a bug that I want to record that I can't fix right now, but want to come back to it in the future. My understanding of <code>expectedFailure</code> is that it would count the test as passed but in the summary say that there were x number of expected failures (similar to how it works with skipped tets). </p>
  
  <p>However, when I run my test suite I get the following:</p>
  
  <pre><code>$ ./manage.py test eav.QueryTest
  Creating test database for alias 'default'...
  .EE
  ======================================================================
  ERROR: test_q_object_with_exclude (eav.tests.managers.QueryTest)
  ----------------------------------------------------------------------
  _ExpectedFailure
  
  ======================================================================
  ERROR: test_q_objects_unioned (eav.tests.managers.QueryTest)
  ----------------------------------------------------------------------
  _ExpectedFailure
  
  ----------------------------------------------------------------------
  Ran 3 tests in 1.095s
  
  FAILED (errors=2)
  Destroying test database for alias 'default'...
  </code></pre>
  
  <p>I'm not sure if this lies with Django's test runner or something I'm doing wrong.</p>
  
  <pre><code>@unittest.expectedFailure
  def test_q_object_with_exclude(self):
      # Everyone except Bob
      q_set = eav_m.Process.objects.exclude(
          Q(eav__details__city__contains='Y'))
      self.assertEqual(q_set.count(), 4)
  </code></pre>