title: Flatten Scala Try
body: <p>Is there a simple way to flatten a collection of try's to give either a success of the try values, or just the failure?
  For example:</p>
  
  <pre><code>def map(l:List[Int]) = l map {
    case 4 =&gt; Failure(new Exception("failed"))
    case i =&gt; Success(i)
  }
  
  val l1 = List(1,2,3,4,5,6)
  val result1 = something(map(l1))
  
  result1: Failure(Exception("failed"))
  
  val l2 = List(1,2,3,5,6)
  val result2 = something(map(l2)) 
  
  result2: Try(List(1,2,3,5,6))
  </code></pre>
  
  <p>And can how would you handle multiple Failures in the collection?</p>