Breaking Changes
================
- Requires armw v2.0. Changes were made simultaneously to both projects to improve stability and fix a number of concurrency related bugs. (!194)
- The median_noise_dB field in the LinkStatsFeedbackMessage has been changed to median_noise_db due to ROS2 not supporting the original name. (!194)

New Features / Improvements
===========================
- Updated clock generator to use tick/tock, this significantly speeds up simulation (sometimes it is almost too fast). Added a registration service so that the modem sim can register / unregister with the clock. Clock increments after rendezvous from every connected modem sim.  (!194)
- Switched from loop_once back to spin called in thread. (!194)
- Added health monitor. Uses diagnostic messages to monitor status of ROS nodes. (!197)

Bugfixes
========
- Replacing headers with armw fill time (!194)
- Publishers / Services using None (rclpy will not autofill None) (!194)
- Concurrency bugs (such as those related to using loop_once) (!194)
- Fix slot/cycle counters for TDMA MACs (!193)
- Health monitor improves integration test stability (!197)

Test Improvements
=================
- Updated unit tests to work with ROS2 (!194)
- Improved test stability by removing helper classes wherever possible, also made use of futures where needed. (!194)
- Skipped some tests that often result in failures due to race conditions (!194)
- Updated gitlab CI yml to use parallel matrix for ROS 1 & 2 testing, also swapped to using a local registry to share images between multiple CI machines (!194)
- Moved location of docker images to docker directory at root of project to keep all dockerfiles together (!194)
- Added new dockerfile for ROS2 (!194)
- Fixed trigger pipelines in gitlab ci, trigger pipelines get branch of triggerer. (!196)