title: Subsets of a tuple
body: <p>How do I produce:</p>
  
  <pre><code>("A","b"),("b","C"),("A",),("b",),("C",)
  </code></pre>
  
  <p>from</p>
  
  <pre><code>("A","b","C")
  </code></pre>
  
  <p>perhaps itertool can be used put I can't seem to find a function that would suit.</p>
  
  <p><strong>UPDATE</strong></p>
  
  <p>Note that <strong>("A","C")</strong> is not in the expected output as I want the subsets to contain members that are consecutive to each other.</p>
  
  <p>Another example:</p>
  
  <pre><code>subset(("A","b","C","D"))
  </code></pre>
  
  <p>should yield:</p>
  
  <pre><code>("A","b","C"),
  ("b","C","D"),
  ("A","b"),
  ("b","C"),
  ("C","D"),
  ("A",),
  ("b",),
  ("C",),
  ("D",)
  </code></pre>