Switch from using SYB to GHC generics for name traversal