Add glideinFrontendConfig.get_group_dir and use it
Create the HistoryFile class, and use it. The history is now persistent across restarts
Use the new get_dict_el methor in history_obj
Make glideinFrontendElement a single loop process, and have glideinFrontend start it up at each iteration. glideinFrontend also limits the number of elements run in parallel at 2
Add option to advertise the FE deails in the glideresource classad
Make number of parallel workers configurable with group_parallel_workers, with 2 being the default
Merge remote-tracking branch 'origin/v3/4990' into v3/4990_v2

Conflicts resolved with manual re-arranging code snippets around:
	frontend/glideinFrontendElement.py
Allow for advertising to a single factory. Also remove the index from the advertize file; it is not needed
Split the creation of the global advertize file from the actual advertizing, just like it was done for the regular requests
Add support for batch advertizement, aggregating several types of classads.
Add a method to get the list of factories that need to be advertized to.
Plus, allow invalid factory name in advertize methods.
Fix typo
Fix createGlobalAdvertizeWorkFile bug - was not friendly to concatenation
Use the batch updates to the factories
Make credential renewal and loading an expicit act
Add a simple funtion that waits for all forked pids to finish.
5692: Run the advertize commands in parallel. Were sequential before.
Improve comments
Support HTCondor-CE attributes - #5204

Adding support for adding any HTCondor attibutes to the submit
file that the factory uses to submit pilots.
Support HTCondor-CE attributes - #5204

Adding documentation describing the new configuration attributes.