Added User- and File IO, (unicode) character support

This pull request adds 'trap' instructions for interaction with the user as well as with files (with full unicode character support), as well as an additional print function that prints unicode characters to the console. These characters fit in 32-bit values, so can live on the stack and heap just like integer values.

After merging these changes, the 'trap' system calls will be:

| Argument | Action |
| :------------:|----------|
0 | print an integer (unchanged and backwards-compatible)
1 | print a character
10 | ask the user for an integer
11 | ask the user for a character
12 | ask the user for a sequence of characters
20 | open a file for reading
21 | open a file for writing
22 | read a character from a file
23 | write a character to a file
24 | close a file

This pull request also contains additions to the documentation file to represent these additional options. All changes are fully backwards compatible with old SSM code.