This release is largely focused at changing the behavior of concatenate, as well as adding a "resampleRegion command".
I wanted to be able to concatenate curves to other objects, i.e. simplecycles. The concatenate function solves this, and allows the user to specify what object they want to use in concatenation. There's one breaking change here - concatenateHys will now take inputs in a list. Managing loose inputs was becoming a nightmare, and this brings it's behavior in line with it's inspiration: numpy's concatenate function.
I also wanted the new objects to have some of the properties of the old objects when resampling - for example, if we resample a simpleCycles and the slope was set for the simpleCycle, the resampled simpleCycle will have it's slope set. To do this I've added some methods for storing and copying state functions to the back-end of some objects.
I was finding that when I made load protocols, I would often only want to resample only a segment of the curve. "resampleRegion" is my answer to this, and allows the user to set regions, i.e. the first and last 10% of a curve, and only use those regions for resampling.
**Breaking changes:**
- modified concatenateHys to take inputs in a list, instead of loose arguments.
**Additions:**
- added some state properties to hysteresis in the backend, which control how cycles/peaks are found.
- added concatenate, which can concatenate objects to other classes, i.e. simplecycles.
- updated concatenateHys to use concatenate by default
- added resampleRegion, which can be used to resample only part of a curve.
- new tests for all above functions