Tidied up how gaining cards works so that a card can be gained from any source and be given the proper destination