WIP: Improve modeling docs how to create user-defined models and fitters

This pull request tries to improve the sections of the modeling docs that explain how to implement user-defined models and fitters.

* Split it in two pages: user-defined models; user-defined fitters
* Extract examples into Python files so that they can be easily tested (the current user-defined fitter example is completely broken) and the user has a working example to copy & paste and get started.
* Change to old-school documentation format: full example first, then short high-level description, then detailed line-by-line explanations.

@nden @embray @astrofrog Please review.

TODO:

- [ ] Replace `TODO` markers with actual line numbers after review.
- [ ] Rewrite `new_model.rst` in the same style I rewrote `new_fitter.rst`.