GRADLE-2650: always set http.keepAlive = "true" to work around bugs in HttpClient-4.2.2
Added a contributor (maven conversion bug pull request) to the release notes page.
Added some more design musings for the configuration-on-demand
Updated docs on configuration on demand.
Small rename job.
Tightened some coverage around configuration on demand. Fixed small problem in the InProcessGradleExecuter (command line args needs to be parsed before processing the gradle properties).
Added a bit of coverage to the parallel integ test.
Added gradle property 'org.gradle.parallel' for parallel execution.

1. I decided to only add org.gradle.parallel for now (avoid parallel.threads). It's because it feels awkward to configure exact number of threads in the gradle.properties - Gradle should figure out the optimal number for the user. Supporting both 'org.gradle.parallel' and 'org.gradle.parallel.threads' also means that we need to code some rules for the scenario when the user specifies both options (e.g. some combinations are mutually exclusive).
2. Added startParameter.isParallelThreadCountConfigured() method. This is a bit awkward but that was the simplest reasonable solution I came up with. (btw. We need to make StartParameter an interface). There's some complexity around the start parameter & gradle properties processing:
a. First we need to parse / convert the command line arguments because they contain information needed for gradle properties parsing (e.g. search upwards, directory, user home, etc.)
b. then we need to pull data from gradle properties and update the start parameter accordingly. However, the command line arguments should generally win over the gradle properties. So gradle properties can only update the start parameter *if* start parameter was not explicitly configured with given property.
3. The StartParameter.newInstance() method seems to be incorrect (the source and target instances share some collections). Should I fix it?

I'm open to discussion how to solve above better.
Documented new Gradle property (org.gradle.parallel).
Some minor tweaks to a couple of dependency resolution int tests.
For integ testing, don't try and set a tmp dir if the Gradle version doesn't support spaces in GRADLE_OPTS or JAVA_OPTS.

This is a bit awkward as it assumes subclasses implement system props via env vars. Using a CLI arg to set this causes issues on windows if the path to the Gradle binary contains a space.
Updates to spec markdown

This page is to be linked from the Gradle 1.5 release outlook 
and thus needs to render well on GitHub.
Added some examples for use of dependency resolve rules to release notes
Reordered some stories. Added a story for introducing build types.
Updated wrapper to use gradle-1.4
Merge branch 'release'
Ensure that new maven-publish API is Incubating, and improve generics
Validate existence of artifact files when publishing with ivy-publish
Added final artifact customisation methods to IvyPublication
- Currently these methods are planned to move to IvyConfiguration
- Still need DSL docs etc
Ensure that IvyArtifact and MavenArtifact do not return null values that cause publishing to fail