Refactor Message.String.

Add PIVMSG.

Some code cleanup and comments.
Add README.
Fixed ParseMessage bug that was splittling trailing param on spaces
when there were no middle params.

Add slightly better error handling to ParseMessage.  Ultimately, I
think I'll need to use the approach described in
https://golang.org/doc/effective_go.html#recover.  There are just too
many runtime errors that can come out of ParseMessage.