Bit more logic around which privs get set depending on the target DB(s)

When assigning privs to a non global DB (I.E. dbname.* rather than *.*) certain global permissions (like SHOW DATABASES) cannot be included.