ENH: Func to check valid pool and guest name
ENH: Func to check valid pool and guest name

Added function __verify_valid_pool to check to see if a supplied name
is a valid pool. This accepts flags which do further checks. The “-p”
checks to see if a pool is set as the primary. At this point in the
script a check has already been done to ensure two primaries do no
exist using wc -l. The “-c” flag checks to see if the pool has a chyves
dataset. When used without a flag, only a check to see if the name
supplied is a valid ZFS pool.

Added function __verify_valid_guest to check if a valid guest name is
given. This requires the pool name be given. First a check is done to
see if the supplied pool name has a chyves dataset. Then a check is
done to see if multiple guests already exist with the supplied name.
Then a direct check to see if that guest exists by polling ZFS and
grepping for errors. The “-s” flag can be used to check to see if this
guest is allowed to start. Guests that are on offline pools or
templates are not allowed to be started. An error just exits using
__fault_detected_exit.

chyves/chyves