Tidy up the gntshr interface and share some types with gnttab