Extract the formula AST and parser into a dedicated `improvise-formula` crate and convert the project into a Cargo workspace. The root crate now re-exports `improvise-formula` as `crate::formula` to maintain backward compatibility for internal callers. The repository map is updated to reflect the new crate structure. Co-Authored-By: fiddlerwoaroof/git-smart-commit (gemma-4-31B-it-UD-Q4_K_XL.gguf)