Be more flexible about URLs with highlighting a source range

Not all repository managers support Github style `#L42-99` range highlighting URLs. An example is [Bonobo Git](http://bonobogitserver.com/) which uses highlight.js and thus does not support line numbers by [design](http://highlightjs.readthedocs.org/en/latest/line-numbers.html). Thus I've added a function `urlRangeHighlight` to the parameters of `Generate`. It defaults to the old `String.Format` and thus does not cause any breakage in existing applications.