I think for a plugin replacement you shoul also consider the different formats of print, to be covered in your library. As you don't inherit from print, you should bring them to your lib also. numbers, HEX, DEC, BIN, F-Makro /PROGMEM support etc.
And by the way, why is String print for SPI missing?
case SPI:
/*
for (uint8_t i = 0; i < len; i++) {
spitransfer(inputStr.charAt(i));
}
*/
break;