Refactored supply deck a bit and added another test case for buying too many cards (should return null)