feat(linear_algebra/exterior_algebra): Add an exterior algebra (#4297)
This adds the basic exterior algebra definitions using a very similar approach to `universal_enveloping_algebra`.
It's based off the `exterior_algebra` branch, dropping the `wedge` stuff for now as development in multilinear maps is happening elsewhere.
Co-authored-by: Adam Topaz <github@adamtopaz.com>
Co-authored-by: Zhangir Azerbayev <zazerbayev@gmail.com>