Allow optional final semicolon in do-notation
Better syntax/semantics for namespaced application.

Now a.b always means 'apply b in the namespace a', so this works as it should for unary applications (a b.c), binary (a b.+ c), and keyword (a b.c: d e: f). On the other hand, this disallows idioms such as @Just(x) — as we've got rid of @ for namespaced access (it only really made sense with non-applied . notation).

I don't really think reverse unary application is all that important, so I'm going to leave this off by now, and require all unary applications to be expresed in postfix form. Applying functions stored in variables is still going to use (a, b) for now. But this might change in the future, by introducing something like  apply-to: a and: b, or something.
Remove a(b) as a pattern in data/pattern matching declarations.
Reverts to module A { ... } syntax for consistency.