Refactored to allow for much more configuration of card type tools