Use PlayArea() instead of lists to hold cards.
Fix tests to use new play areas
Merge branch 'cardlist' into develop