Tidying up of .h / .c file

- Amended header file to include clarity on type definitions.
- Transposed a number of numeric integer returns to typedef enums for
clarity.
- Some basic tweaking to system text to make it clearer for the user
what constitutes valid inputs.