* Now human player uses same code for playable abilities search as test framework (old version used different code, so it could not work in one of the modes);
* Split cards - improves playable highlights;
* Split cards - fixed that it doesn't work with dynamic added abilities like flashback (#6327, #6470, #6549);
* added new discard method
* started refactoring to use new discard method
* refactored A through I
* fixed some issues
* separated balance effect into its own class
* refactored J through R
* refactored S through Z
* applied requested changes
* updated implementation of Unpredictable Cyclone, refactored drawCard method
* fixed another small implementation error
* added test for Unpredictable Cyclone
* updated Unpredictable Cyclone test
* Added support to test Monte Carlo AI (CardTestPlayerBaseWithMonteCarloAIHelps - any aiXXX commands);
* Added Quick Start button to test Monte Carlo AI games (MCTS);
* Added AI commands support to play attacker and blocker steps;
* Fixed double triggers of blocker declared event (if block command used with block requirement effect);
* added alias support in castSpell command;
* added alias support in activateAbility command (example: `@ref ability text from ref card`);
* added alias support in activateMana command;
* added alias support in some assertXXX commands;
* fixed wrong manually pay by mana pool (it pays generic cost instead colored part of monohybrid);
* fixed not working cost reduction effects (now monohybrid cost will be reduced correctly with some limitation, see #6130);
* added aliases support to many assertXXX commands (check objects by alias/GUID instead card name);
* added mode to test/simulate human's mana pool usage without auto-payment (enable it by command disableManaAutoPayment, fill mana pool by activateManaAbility and simulate clicks on mana icon by setChoice);
* improves activateManaAbility command (you can activate it multiple times by one command);
* improves setChoice command (you can activate it multiple times by one command);
This also handles the rather unique case caused by Sevinne's Reclamation where the original spell resolves before the copy of it.
Also fixes a couple typos.