Refactor rulesets into smaller composable operations
In order to mix up the functionality from different rulesets like Solo, Royale, etc. the code in these classes needs to be broken up into small functions that can be composed in a pipeline to make a custom game mode.
* move snake API structs into a new client package
* add customizations to snake objects
* refactor and add support for passing snake customizations in games
* fix sending of new params
* add royale and squad settings to requests
* add --debug-requests option
* update test for request body and add helper
Co-authored-by: Penelope Phippen <penelope@hey.com>