Limit return value from rx_get_pulse to -INT_MAX, since -INT_MIN > INT_MAX, and hence cannot be stored in an int
Add Macros.h containing common macros. We can now #include Macros.h instead of copying macros between files
Add simple RingBuffer class

Suitable for forwarding data from an ISR to the main loop.
Add PulseParser class for decoding incoming Nexa waveforms into bit sequences
Fix ASSERT() macro when DEBUG is disabled
Provide non-consuming access to the wrapped portion of the ring buffer
Teach NexaCommand to parse incoming bit sequences into NexaCommand instances
Rewrite needlessly complicated add_bits() into the simpler charbits2byte()
Various minor refactoring
Force caller to think about the number of repetitions sent