fix(frontends/lean/elaborator): propagate tags for getting better error messages

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
fix(frontends/lean/elaborator): option name

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
refactor(frontends/lean/elaborator): reorg class elaborator

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(frontends/lean): improve error message for placeholder that can't be synthesized

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
test(tests/lean/run/class5): improve test

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
refactor(frontends/lean/elaborator): modify when tactic_hints are invoked, add the notion of strict placeholder

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>