Create -P and -G options for program and group exceptions

Currently, the behavior if you have -a and a -p or a -g, or a -g for a group which contains a process that has a -p associated with it, the "higher level" limit is binding if the "lower level" limit is higher. I.e. You can use -p to set a limit that is LOWER than the -a limit, but you can't use -p to set a limit that is higher than the -a limit. New options, -P and -G, allow you to set a limit that is higher than the one set at the higher level in the hierarchy.