fix bug where player always discards down to 7
rename groovyCode to requiresGroovy, cardCode to requiresJava
Sort cards by index first, then by id. Use sorted order to generate AI choices as hand is considered unordered for game state
refer to card from library instead of graveyard
use more appropriate method