feat(frontends/lean/parser): add 'parse_commands' and 'parse_script'

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
refactor(frontends/lean/cmd_table): remove register_builtin_cmd procedures, they would cause initialization problems

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(frontends/lean/builtin_cmds): add simple 'print' command

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(util/lua): add check_atleast_num_args helper function

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(library): add choice expressions

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
refactor(library/deep_copy): use replace to implement deep_copy

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
chore(shell): re-activate .lean tests

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

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