The build tools that we don't expect to be in the system path are all in `support/build`. Some are checked in there, and some (the standalone ruby and the ruby dev tools) are downloaded by the build process when needed.

Maybe we should do the same thing for test tools. If phantomjs on Windows is in a known location, then the build script can take better care of the path. There's less chance of it being unescaped or double escaped, and we wouldn't need to burden the user with special syntax when running the tests.

Here's how `public/Rakefile` sets up the Pygments library for `rocco`.

    ENV["PATH"] = File.expand_path( "../support/build/Pygments-1.4" ) + ":" + ENV["PATH"]

We could either direct the developer to put phantoms.exe in a specific location or to download it automatically. Downloading it is easy enough to do (although any necessary proxy config needs to be in place). `support/build/Rakefile` downloads and expands the standalone ruby like this:

    file "#{RUBY}.7z" do |task|
        rake_output_message "Downloading #{task.name}"
        sh "curl -q -# -L -o #{task.name} #{RUBY_URL}"
    end

    file RUBY => "#{RUBY}.7z" do |task|
        begin
            rake_output_message "Expanding #{task.name}"
            sh "7z x #{task.prerequisites.first} >/dev/null"
            touch task.name
        end
    end

(For clarity, some details specific to the ruby tool were omitted.)