Implement group support

These commits add support to use sudo's functionality to specify a group instead of a list of users. The canonical example of all sysadmins being in the wheel group and giving wheel access to run commands instead of listing out each admin's username is appropriate.