Divergent evolution of enzymatic function: mechanistically diverse superfamilies and functionally distinct suprafamilies.