Fix #167

Can handle now vararg arguments in patterns.
Merge pull request #168 from dotty-staging/fix/#167

Fix #167
Merge branch 'reb' of https://github.com/dotty-staging/dotty into reb
Make changeOwner more robust regarding non-standard owner chains

The problem is running changeOwner(from, to) where

 - from is a ValDef or a Label
 - an embedded definition has as owner not `from` but some
   owner of `from`.

We allow such denomrlaized owners and the pattern matcher generates
them. This patch makes changeOwner take these situations into account.
Make rejection of deep subtype call stack optional

Move flag that throws exception on deep subtyping stacks from Config varianble to setting.
Disable setting for core-pickling which had a deep subtype failure after pattern matcher
was integrated. Todo: Figure out why the subtype stack got so deep.
Make productArity a synthetic method which can be overridden

Like other synthetic methods, productArity will not be generated
if an explicit definition is given. Used to be generated unconditionally
in desugaring.
Merge branch 'reb' of https://github.com/dotty-staging/dotty into reb