Az.ToolBox.psm1

$preloadPath = (Join-Path $PSScriptRoot -ChildPath "Assemblies")
try {
    Get-ChildItem -ErrorAction Stop -Path $preloadPath -Filter "*.dll" | ForEach-Object {
        try {
            Add-Type -Path $_.FullName -ErrorAction Ignore | Out-Null
        }
        catch {
            Write-Verbose $_
        }
    }
}
catch { }

$Public = @(Get-ChildItem -Recurse -Path $PSScriptRoot\Functions\*.ps1)

foreach ($import in $Public) {
    try {
        . $import.fullname
    } catch {
        Write-Error -Message "Failed to import function $($import.fullname): $_"
    }
}

Export-ModuleMember -Function $Public.Basename