Add more parse errors for coeffects
Summary:
This adds a few more parse errors to explain coeffects transformation errors
- error when `$f` doesn't exist given `ctx $f` or `$f::C`, or doesn't have a type hint
- `$f`'s type hint must have exactly the form `(function (tbar)[_]: t)` when `ctx $f` is present
- no projecting type constant off variadic parameter
- error when using polymorphic context on memoized function
Reviewed By: losvald
Differential Revision:
D25777157
fbshipit-source-id:
bbb0f29dec422563445f622a56d566185ee35328