Out of memory, how to reduce this program's size

  Serial.print("ArduinoIMU starting using device "); Serial.println(imu->IMUName());

The string literals end up in SRAM, unless you take action to keep them out. Fortunately, that is very easy:
Serial.print(F("ArduinoIMU starting using device ")); Serial.println(imu->IMUName());