Implemented BIP 0014 format for user agent

the new function AddUserAgent adds the user agent to the stack
and formats it as per BIP 0014
e.g: "/btcwire:0.1.4/myclient:1.2.3(optional; comments)/"

the validation on UserAgent has been moved to a new function
validateUserAgent
Improve comments on new AddUserAgent function.
Remove note that is no longer true.

The code was updated to automatically handle the transaction count in the
block header without having the additional field some time ago.  This
comment was outdated.
Remove function name from ShaHash error message.

This makes golint happy.
added type MsgAlertPayload