Board data: Read/write tests, parsing fixes and compressed file support
This branch adds a range of improvements to the board data utilities:
- Adds tests for read & write functions
- Adds
FileFormat
enum (replacing previous string, which is more error prone) - Adds support for reading gzip-compressed EMP data files
- Core classes and functions moved out of
cli
directory