add conversion of "~/campaigns" to "~add-ons"

grep turns up several old add-ons that use this for map_data.
add a tupled list of mainline campaigns

The next commit will use this list to keep mainline paths untouched while it updates old UMC paths from 'data/campaigns' to 'data/add-ons'.
convert old UMC paths from data/campaigns/ to data/add-ons/ in a mainline-safe way

Explanation:

x = 0:  Starting point of value x; will be incremented upward with each replaced path.
for dc:  With finditer, we turn up all paths in a line.
  if dc.group(1):  We want to skip campaigns that have a match in the tuple 'mainline'.
  lines[i]:  Otherwise, we reconstruct the line, substituting 'data/add-ons/' for 'data/campaigns/'. For lines where more than one path needs to be replaced, however, there is a complication. Since 'add-ons' is two characters shorter than 'campaigns', but start() and end() are based on the original location of the iteration, we have to offset start() and end() by two for each prior replacement.
  x+2:  Having made a replacement, we increment x by two.
  print:  Report the change to stdout.
Merge pull request #28 from groggydice/umcpath

upgrade old UMC paths from data/campaigns/ to data/add-ons/