depreciated/New-Runspace.ps1

function New-Runspace ([string[]]$SetVariable) {
    $rs = [runspacefactory]::CreateRunspace()
    $rs.ApartmentState = "STA"
    $rs.ThreadOptions = "ReuseThread"
    $rs.Open() | Out-Null

    foreach ($varName in $SetVariable) {
        $v = (Get-Variable -Name $varName).Value

        $rs.SessionStateProxy.SetVariable($varName, $v)
    }

    return $rs
}