do not check for AbstractClassName in unit tests
add abstract spi implementations for convenience
simplify map builders