Add body of ProjectFile.GetOutputDirectory.processPlaceholders
Add body of ProjectFile.GetOutputDirectory.processPlaceholders

Uses a regular expression to find and replace placeholder values.
Note that the matches found by the regex need to be processed in
reverse order, so that their indexes remain valid.

mausch/Paket,NatElkins/Paket,robertpi/Paket,Thorium/Paket,kjellski/Paket,ascjones/Paket,simonhdickson/Paket,Stift/Paket,thinkbeforecoding/Paket,0x53A/Paket,MorganPersson/Paket,robertpi/Paket,isaacabraham/Paket,antymon4o/Paket,inosik/Paket,mrinaldi/Paket,thinkbeforecoding/Paket,dedale/Paket,lexarchik/Paket,lexarchik/Paket,inosik/Paket,simonhdickson/Paket,Thorium/Paket,NatElkins/Paket,kjellski/Paket,cloudRoutine/Paket,cloudRoutine/Paket,matthid/Paket,mrinaldi/Paket,Thorium/Paket,jonathankarsh/Paket,dedale/Paket,jonathankarsh/Paket,magicmonty/Paket,baronfel/Paket,matthid/Paket,isaacabraham/Paket,mavnn/Paket,matthid/Paket,colinbull/Paket,0x53A/Paket,NatElkins/Paket,thinkbeforecoding/Paket,snowcrazed/Paket,LexxFedoroff/Paket,thinkbeforecoding/Paket,cloudRoutine/Paket,mrinaldi/Paket,Stift/Paket,artur-s/Paket,LexxFedoroff/Paket,vbfox/Paket,konste/Paket,snowcrazed/Paket,fsprojects/Paket,lexarchik/Paket,Thorium/Paket,sergey-tihon/Paket,vbfox/Paket,antymon4o/Paket,isaacabraham/Paket,MorganPersson/Paket,NatElkins/Paket,magicmonty/Paket,mexx/Paket,jam40jeff/Paket,fsprojects/Paket,magicmonty/Paket,artur-s/Paket,mexx/Paket,sergey-tihon/Paket,vbfox/Paket,MorganPersson/Paket,simonhdickson/Paket,jam40jeff/Paket,mavnn/Paket,snowcrazed/Paket,vasily-kirichenko/Paket,Stift/Paket,0x53A/Paket,MorganPersson/Paket,Stift/Paket,0x53A/Paket,konste/Paket,robertpi/Paket,baronfel/Paket,simonhdickson/Paket,vbfox/Paket,mrinaldi/Paket,snowcrazed/Paket,isaacabraham/Paket,vasily-kirichenko/Paket,ascjones/Paket,colinbull/Paket,theimowski/Paket,theimowski/Paket,mausch/Paket,magicmonty/Paket,cloudRoutine/Paket,lexarchik/Paket,robertpi/Paket,matthid/Paket