Feature/ae tdp plotter different detectors

Opening this up for merging.

Points to make:
 - it plots the time difference between two TDP sources
 - you need to specify the two channels and can optionally specify the generators and configs for each
 - also in this branch are the renamings of the plotter modules to explicitly state which pulse class they use and also some modules are moved into legacy

A few questions:
 - is this the correct way of doing things with IDs::sources/TDPs etc? This is my first go at using them so could well have misunderstood something
 - is just asking for the time from the TDP ok? Do we want an option to plot the fast time differences and slow differences?
 - should I extend this to have a list of pairs that we want to compare? (this would be different to how it's done in PlotTAP_TimeDiff)
It's the usual story that this is not called often and will almost certainly be optimised away, but I think it's better to use the constructor directly:
```
 IDs::channel channel_a(opts->GetString("det_a"));
```

And just to make sure it's clear, you can assign IDs from a string, so the following would also work:
```
 IDs::channel channel_a=opts->GetString("det_a");
```