feat(lua): add mk_metavar to Lua API

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(lua): add to_nonnull_expr

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(lua): expose environment objects in the Lua bindings

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
fix(kernel/type_checker): add missing test, and kernel_exception has_no_type_exception

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(lua): allow lua scripts (embedded in Lean files) to access the environment

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
chore(emplace_back): use emplace_back when appropriate

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
style(lua): use C++-style cast

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
chore(*): add LCOV_EXCL_LINE to lean_unreachable statements

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
test(lua): add tests for options object

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
test(lua): add tests for sexpr object

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
test(lua): add tests for format object

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
fix(lua): typos and a bug in the expr Lua bindings

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
test(lua): add tests for expr object

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(lua/name): add hash method to name objects

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
fix(util/memory): make sure realloc behaves like free when sz == 0

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(lua): add State objects, it allows us to create several Lua State objects in a lua script

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(lua): add support for multiple execution threads in the Lua API

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
doc(coding_style.md): add section about git pre-push hook

[skip ci]
doc(README.md): use horizontal layout for the badges

simplified the title (i.e. from Ubuntu 12.04 LTS => Ubuntu), however, the detailed information are still accessible by positioning mouse over the icons.

[skip ci]
doc(README.md): "Code coverage" => "Coverage" to fit in one line

[skip ci]