RFID and Radio Not playing nice together

I’ve seen several post around here about a problem with radio chips and RFID reader. I have spent hours trying to figure it out. It seems that somehow the RFID causes issues with the radio. If I call the radio chip method before the RFID bit it works, if I call it after it fails. I then started from the examples of both and when both run the rfid works but kills the radio. I am suspicious that it has to do with RadioHead using SPI but I have no idea how to fix it.

#include <SPI.h>
#include <MFRC522.h>
#include <RH_ASK.h>

#define RST_PIN         9          // Configurable, see typical pin layout above
#define SS_PIN          10         // Configurable, see typical pin layout above

MFRC522 mfrc522(SS_PIN, RST_PIN);  // Create MFRC522 instance
RH_ASK driver(2000,2,3,4,false);

uint8_t buf[RH_ASK_MAX_MESSAGE_LEN];
uint8_t buflen = sizeof(buf);

void setup() {
	Serial.begin(9600);		// Initialize serial communications with the PC
	if (!driver.init())
         Serial.println("init failed");
	SPI.begin();			// Init SPI bus
	mfrc522.PCD_Init();		// Init MFRC522
	delay(4);				// Optional delay. Some board do need more time after init to be ready, see Readme
	mfrc522.PCD_DumpVersionToSerial();	// Show details of PCD - MFRC522 Card Reader details
	Serial.println(F("Scan PICC to see UID, SAK, type, and data blocks..."));

void loop() {
	// Reset the loop if no new card present on the sensor/reader. This saves the entire process when idle.
	if ( ! mfrc522.PICC_IsNewCardPresent()) {

	// Select one of the cards
	if ( ! mfrc522.PICC_ReadCardSerial()) {

	// Dump debug info about the card; PICC_HaltA() is automatically called


    if (driver.recv(buf, &buflen)) // Non-blocking
  int i;

  // Message with a good checksum received, dump it.
  driver.printBuffer("Got:", buf, buflen);

I would be thrilled if anyone had any idea of how to make this work. Or at least how to have the SPI stop using the rc522.