title: Implementing the All / Universal set
body: <p>In order to simplify my code, I would like to implement a set that contains <em>everything</em>, i.e. a <code>UniversalSet</code>. I figure that the simplest of way of getting around this is to have a custom set that returns True for any query. In my particular case I am mostly interested in the <code>__intersect__</code> of sets such that the following criteria are true:</p>
  
  <pre><code>u_set = UniversalSet()
  u_set &amp; {1, 2, 3} == {1, 2, 3}  # (1)
  {1, 2, 3} &amp; u_set == {1, 2, 3}  # (2)
  </code></pre>
  
  <p>I have subclassed <code>set</code> in the following manner:</p>
  
  <pre><code>class UniversalSet(set):
      def __and__(self, other):
          return other
  </code></pre>
  
  <p>This works for <code>(1)</code>, but <code>(2)</code> still fails. Is there a similarly easy way to make <code>(2)</code> to work?</p>