With this change, the core components of the AuditLog service are refactored to fix some bugs identified during some corner case testing, to increase test coverage, to improve maintainability and code quality.
Additionally, the header fields are amended to increase the timestamp and to add an initialisation vector field to be used later when Crypto support is needed.