I got it, thanks to Trevor Sullivan for pointing me in the right direction. I ended up just putting my second ps1 file in the script block and running it as a job and passing arguments to it from the main script, like this
$job = Start-Job -scriptblock {
param ($username)
some code to run against the variable that was passed in
} -Args $target -credential $Cred
$target - , -.
$ username - , .