Expand 'source' to allow for environment variables/parameterization

I have a build job that is used by lots of other jobs, the job is 'specialised' via the user of build parameters (this allows the child jobs to control what the parent job does). One aspect the children need to be able to control is the Mercurial repository URL that is cloned. Previously this would fail as internally the 'source' String was not being expanded.