Implemented time synchronization
Added plugin filters into configuration
Moved initialization of the ClientManager class into initializer

This makes reports about failures in ClientManager initialization appear in
the error messages for ClientManager plugin and not the first plugin to use
it.
Updated all plugin initializers to call static Instance constructors
NativeClient will create entities on connect and only move/rotate them
Made ReadOnlyCollection return a copy of the wrapper collection
Added a lock for the nextCallID.
Changed names of private variables in Communicator to follow naming rules
Added statistics reports into NativeClient
Extended statistics class to include per-function information
Improvements and bug fixes to statistics logging on client
Fixed a handling of PluginFilters when it is not defined on the server.
Changed the way client generates statistics (every 5 seconds with resets).
Simplified logging to be able to collect first-hand information
Refactored the NativeClient code, added ActionDelayMs parameter
Added support for "--logfile" parameter to NativeClient
Added try-catch with logging to handle call errors gracefully
Modified config file for NativeClient to log into a file
Added logging of the reason for the connection when it's closed.
Changed ClientDriver to set position to DateTime.Now.Ticks.

This allows to determine when the update was sent from another client.