Sifting

Here are updates to sifting:

- it is less memory-hungry
- plots have been updated, and should work with older versions of matplotlib
- too-low-DM candidates shouldn't pass through sifting
- tracking of bad/duplicate candidates is off by default now, but can be turned on with an argument to read_candidates
- the text output format now includes sigma for all hits (in addition to dm and snr)

Patrick