Renaming type class to avoid confusion over semantics