Also fix SlotOverall so that passing it equal height and width doesn't
error out and instead reduces to a Circle. (bug discovered while
writing the new test case).
Also added documentation for the new facility as well as a nascent
CONTRIBUTING.md to collect pointers to the tools used by developers of
this project.
I had to go through a bit of troubleshooting to install build123d on my M1 mac. The instructions said to install dependencies using the `--no-deps` argument which is problematic because child dependencies still need to be resolved for the top-level dependencies. The only place `--no-deps` should be used is with the `build123d` package itself. The only direct dependency that wasn't installable using pip was `cadquery-ocp`, which is already installed from the previous conda install command.
I've also updated the list of pip dependencies based on the latest `pyproject.toml` and condensed them into a single command, with the build123d install being the final package installed.
Note that I've only tested this using micromamba, but I'm assuming it woud be the same when using conda. I tested on a fresh environment and it appears to have worked:
```
>>> from build123d import *
>>> print(Solid.make_box(1,2,3).show_topology(limit_class="Face"))
Solid at 0x10ce88cb0, Center(0.5, 1.0, 1.5)
└── Shell at 0x136b71b70, Center(0.5, 1.0, 1.5)
├── Face at 0x103036130, Center(0.0, 1.0, 1.5)
├── Face at 0x14467c630, Center(1.0, 1.0, 1.5)
├── Face at 0x14467c8f0, Center(0.5, 0.0, 1.5)
├── Face at 0x144865ab0, Center(0.5, 2.0, 1.5)
├── Face at 0x1448659f0, Center(0.5, 1.0, 0.0)
└── Face at 0x144865a70, Center(0.5, 1.0, 3.0)
>>>
```
Success! 🎉
Hopefully github will have arm64 build support finished this year and we won't have to deal w/ it much longer.