fix 2 bugs: popping values from kwargs instead of letting them in and __exec also returns stderr so we have to take that into account.