A few changes to the tests:

- Move to single test runner
- Add tests for buffer and channel comparison operators
- Fix a failing modulo test
Add comparison operators for buffer and channel
Various small changes to operators:

- Fix a broken modulo operator
- Move from using a char to an enum to disambiguate operator types
- Use macros to set up constant operator aliases
Macroize more aliases to make it easier to add new operators.
Macroize pretty much all of the DSL.
Add tests for comparison with constants.
Macroise operate functions.
Remove wrong comment
Remove possibility of Processor op Constant, to bring it in line with
unit operations.  More brackets required, but the behaviour seems better
defined.
Add tests for unit operators.
Remove options to tick through an RValue processor to reflect the
removal of processor creation through operators.
Add tests for ticking.
Add missing includes.
Cleanup the tests slightly.