Building Juju on windows

For convenience, I will assume that the first thing you do is:

start powershell
(new-object System.Net.WebClient).DownloadFile("http://go.googlecode.com/files/go1.2.1.windows-amd64.msi", "$HOME\go1.2.1.windows-amd64.msi")
(new-object System.Net.WebClient).DownloadFile("http://bitbucket.org/tortoisehg/files/downloads/tortoisehg-2.11.2-hg-2.9.2-x64.msi", "$HOME\tortoisehg-2.11.2-hg-2.9.2-x64.msi")
(new-object System.Net.WebClient).DownloadFile("https://msysgit.googlecode.com/files/Git-1.9.0-preview20140217.exe", "$HOME\Git-1.9.0-preview20140217.exe")
(new-object System.Net.WebClient).DownloadFile("https://launchpad.net/bzr/2.5/2.5.1/+download/bzr-2.5.1-1-setup.exe", "$HOME\bzr-2.5.1-1-setup.exe")
cmd.exe /C call msiexec /i $HOME\go1.2.1.windows-amd64.msi /qb
cmd.exe /C call msiexec /i $HOME\tortoisehg-2.11.2-hg-2.9.2-x64.msi /qb
cmd.exe /C call $HOME\bzr-2.5.1-1-setup.exe /SILENT
cmd.exe /C call $HOME\Git-1.9.0-preview20140217.exe /SILENT
setx PATH "$env:PATH;${env:ProgramFiles(x86)}\Git\cmd;${env:ProgramFiles(x86)}\Bazaar;${env:ProgramFiles}\TortoiseHg"
setx GOPATH "$HOME\golang"
$env:PATH += ";${env:ProgramFiles(x86)}\Git\cmd;${env:ProgramFiles(x86)}\Bazaar;${env:ProgramFiles}\TortoiseHg;C:\go\bin"
$env:GOPATH = "$HOME\golang"
mkdir $env:GOPATH
go get -v github.com/juju/juju/...
go get -v launchpad.net/godeps
& $env:GOPATH\bin\godeps.exe -f -u $env:GOPATH\src\github.com\juju\juju\dependencies.tsv
go install github.com/juju/juju/...

:!: IMPORTANT NOTE :!: DRAGONS AHEAD :!:

If you ever get a bunch of errors like the following while compiling:

conflicting definitions for @

Simply:

rm -Recurse -force $env:GOPATH\pkg\windows_amd64

and try again.