Fix #79: Support named parameter syntax: Rec(a = 1)

I can propose `Tup2`, `Tuple`, `Tuple2`, ... but adding `Extractor` to the name will make the usage site very awkward:

```scala
x match {
  case TupleExtractor(x, y) =>  ???
}
```

You could almost believe that we are pattern matching for a TupleExtractor (whatever that is...).