Tidied up history for changes

These are the same changes as before but this history has been simplified to make the changes as independent / orthogonal as possible. I've also removed the whole --depth parameter from this the history because this didn't work properly. I may attempt that feature again in future.

1) Support fan out build configurations by allowing the branch to be specified as a build parameter. Where the branch/tag refers refers to a fully specified version of the manifest file. This allows multiple, parallel builds to get exactly the same source.

2) Add support for the repo-url parameter

3) If repo sync fails then retry without setting the jobs parameter (default jobs = 1) because to ovoid overloading the git server. N.B The git server daemon defaults to a maximum of 32 concurrent connections.

4) Fixed a string parsing NPE that occurs if if the git commit id is unknown.

5) Optionally generate links to gitweb in the change history.