Adds basic error message functionality

- Error messages can now be displayed via the Error function.
- Variables for displaying errors in the visualiser created.
Changes printf errors to the new error function

- Errors previously displayed via printf statements are now using the
Error function.
- Additionally, printf warnings are displayed using a define that
redirects to the Error function.
Fixes storing of error messages

- Error messages are now stored correctly.
- Memory buffer is reset prior to copying contents.
Adds DAMSON output to visualiser and closes #3

- Visualiser now prints last instruction and any error messages that
have been encountered. This implements and, thus, closes #3.
- Variables for such messages are initialised in main function.
Merge branch 'feature/VisualiserMessages'