Extended the scope of method type parameters
Extended the scope of method type parameters

You can now refer to type parameters of methods and functions in their
bodies. For example:

```
def foo(x : a) : Foo<a>
  new Foo<a>
```

Note that there is no tracing of parametric classes, so they are
generally not safe to use (although this commit will not introduce new
bugs).

parapluu/encore,parapluu/encore,parapluu/encore