I resolved #1 by putting the values in the user state object after loading the form. I am still unclear how I can put data from two tables into the component's container.
//Get USer Information Associated with reservation
$resUserID = $this->getState('
gwrequest.id');
$db = Factory::getContainer()->get('DatabaseDriver');
// Create a new query object.
$query = $db->getQuery(true);
// Select User Info based on freign key
$query->select(
$db->quoteName(['
u.name', 'u.email'])
);
$query->from($db->quoteName('#__users','u'));
$query->join('LEFT', $db->quoteName('#__gwrequests','gwr'),$db->quoteName('gwr.user_id').' = '.$db->quoteName('
u.id'));
$query->where($db->quoteName('
gwr.id')." = ".$resUserID);
$db->setQuery($query);
$db->execute();
$result=$db->loadRow();
//Put results in user state
$app = Factory::getApplication();
$app->setUserState('resUserName',$result[0]);
$app->setUserState('resUserEmail',$result[1]);