Test: Duplicate message ID/direction assignments.
Duplicate test: Check directions value in both directions (oh the irony), just being safe here.
Getting rid of some redundant naming parts.
Unused function "CreateResponse" in Message class.
MessageDirection is a byte enum. Removed "Both" assignment, use ToServer | ToClient instead.
Some more documentation on the Message class.
CheckNetworkMessageSerialization: Little typo
Code cleanup, profile logic (check for unique nickname, possibility to require profile fields being set before joining a channel, allow updating profile fields after login), extended tests.