WIP: NLP

Before merging:
- [ ] More examples
- [ ] Compare hessian evaluation timings with AMPL
- [x] Nonlinear constraints
- [x] Support mix of linear, quadratic, and nonlinear constraints/objective
- [x] Tests
- [ ] Documentation
- [x] Support conditional syntax in ``sum{}``
- [x] Publish ReverseDiffSparse in METADATA
- [x] Support ``/``
- [x] ``prod{}`` macro (like sum{})
- [x] Move handling of sets of similar expressions to ReverseDiffSparse