BlackJack Refactored