Refining some syntax rules in CLS

Featuring:
- replacing intended specific constant resolution operator `::` with more generic access operator `.`
- restricting usage of type projection operator `#` back to Scala levels (consequence: self+super will still be keywords when prefixed with `.`, overrideable with backticks around the keyword)
- fixing `@{}` to `@[]` + `@() -> {}` in scope of dependent types and related, `@{}` is now reserved for annotations
- fixed vendor domain syntax to include dashes
- added an example of abstract units of measure