Fix union case generation crash

When only one single case is written and it is not "pure": some inner
arguments in the pattern match case are bound to constants or there are
guards associated with the case...
Some sequence was empty while it was assumed to be non-empty

Fixes #700 
what about

```fsharp
module Option =
    // I think it'd be reusable 
    let ofList = function
        | [] -> None
        | xs -> Some xs

casesWritten
|> Seq.map snd
|> Seq.minBy List.length
|> Option.ofList
|> Option.map (String.concat ".")
```