removed unsafe casting in StructureODR 

- SemanticTextFactory signatures now give back implementations rather than interfaces