Require all SMsgWriter caller to check capabilities

Make the API consisitent by requiring the caller to check what the client
supports before calling any of the write* functions. This avoids the
confusion that the functions might not always do anything.
3 files changed