Moved includes to implementation files

Moved all the includes possible from the header files to the cpp files.
Replaced class names with forward declarations in the header files where
needed. Trying to be more C++ efficient!
Added a raw message field

Can now store all of the information needed to read and write out files.
Also fixed a bug in the logic of the Receiver state machine so it can
now handle \r and \n characters.
Added opening and saving

Can now read and write out to files. Raw data only for the time being,
next step is to work on importing and exporting CSV files and graph
images.