Pluginabilty support for remote read operations

added configurable remote read client 'RemoteBlockReader' and changed remote 'DataServer' to be configured by class name as well
since the remote client and data server are known only at ctor (using Parameterized) the setup and cleanup can't be executed before