Refactor grammar and unify base_expr into max_expr
Basic support for maps in the grammar
Unify max_expr to avoid duplication
Allow %{ foo => bar }
Support map updates
Ensure multiple kw args with pipe
Macro.to_string/1 for maps and struct AST
Basic maps compilation
Inline is_map, ensure proper traversal
* implement Inspect for keyword in maps
* add basic tests for inspecting maps
* add basic support for inspecting structs