use better writing form, add comments, etc.

 - spacing
 - commenting
 - add exclamation to hello world string
 - use fputs () so a different channel can be chosen
 - use correct signature for main() so that the stack is correctly setup on all architectures
 - don't leave an extra line at the end of the file
 - add proper error handling