New engine & combinators
- New engine: Church-encoded Free monad instead of Free monad. Both engines are available, but Church is now main.
- New engine: optimization. Quadratic complexity of binding is eliminated. Now, it's linear.
- New project structure.
- std::optional-aware STML combinators.
- More new combinators.
- Several small optimizations and tunings.