- refactor: simplified target implementation from a dozen canTarget, canChoose and possibleTargets methods to canTarget/possibleTargets only (part of #13638, #13766);
- refactor: fixed wrong target implementations in many cards (example: TargetCardInHand for opponent's hand, close#6210);
- AI: now human, AI and test players -- all use possibleTargets logic in most use cases instead filters or custom validation;
- AI: improved AI sims support for multiple targets abilities;
- AI: improved AI stability, freezes and targets errors in some use cases;
* replace addSuperType with supertype.add in card constructors
* more supertype replacements
* update MDFC supertype implementation
* remove unnecessary class
* update test
* replaced blocking/blocked by predicates
* added test for knight of dusk (currently fails)
* added source parameter to filters and everything else that needs it
* some changes to various predicates
* test fix
* small changes to filter code
* merge fix
* fixed a test failure
* small change to Karn, Scion of Urza
* removed sourceId from filter methods and other similar places
* added new getobject method to fix some test failures
* a few more fixes
* fixed merge conflicts
* merge fix
* [NEO] Implemented Tamiyo, Compleated Sage
* replaced PhyrexianManaCost calls with ManaCostsImpl calls
* updated phyrexian mana implementation
* added phyrexian hybrid symbol support
* updated starting loyalty implementation for planeswalkers
* change compleated to singleton
* implemented Compleated ability
* added some missing loyalty setters
* changed when loyalty is added to a walker to fix bugs
* slight change to some tests to fix them from failing
* fixed token issue