refactor(frontends/lean): rename parser methods is_section* to is_local*
fix(emacs/lean-syntax): glitch on syntax highlight
feat(frontends/lean): add 'universe variable' command

We can declare variables anywhere. So, we must also be able do declare
"universe" variables anywhere. Here is a minimal example that requires
this feature

```
-- We want A and B to be in the same universe
universe variable l
variable A : Type.{l}
variable B : Type.{l}
definition tst := A = B
```

The following doesn't work because A and B are in different universes
```
variable A : Type
variable B : Type
definition tst := A = B
```

The following works, but tst is not universe polymorphic, since l is
one *fixed* global universe
```
universe l
variable A : Type.{l}
variable B : Type.{l}
definition tst := A = B
```
refactor(frontends/lean): adjust function names to reflect how parameters/variables behave
feat(library/algebra/category): use variables instead of parameters
refactor(library/algebra/category): remove unnecessary sections
refactor(frontends/lean): do not expose unnecessary functions
feat(frontends/lean/notation_cmd): remove the cleanup notation hack
feat(frontends/lean): allow parameters only in contexts
refactor(library/scoped_ext): sections are just "nameless" namespaces
feat(frontends/lean): do not allow coercion definition in sections
checkpoint