refactor: XEP-0392: Refactor and document the implementation
- Provide more granular access to separate algorithms
- Allow users to specify saturation and lightness
- Add type information to the interface
- Add docs with links to precise XEP versions (thanks Jonas for fixing 404s!)
The main goal here is allowing library users to specify desired saturation and lightness (they were hardcoded to 100% and 50%, respectively).
Other goals are documenting the old -- and slightly incorrect -- behavior (which is retained here for backwards compatibility), decoupling hue generation from the extremely slow hsluv
library, and typing the API.