[products] removes even more duplication
[products] fix incorrect evaluation for H1 classes
[products] unify H1SemiGeneric/L2
[products] fewer subclassing, more aliases
[products] rename *Forward -> Generic* + split