this refactor includes changes to TClient:
- all member fields are now public, but protected with Sync (an alias
for boost::synchronized_value
- removed all (now) obsolete getters and setters
changes to TServer and TNetwork:
- thread-safe ID generation, previously it was possible for there to be
ID duplicates. this is now solved by moving id generation and
assignment into the same mutex locked context.
- deprecated ForEachClientWeak and replaced some usages of it with
ForEachClient, getting rid of the weak_ptr shit in most places
- implemented a bunch of new functions for getting rid of more weak_ptr
everywhere