some more functions.  still need to rewrite a bunch of cards