Moved Communication to use ObjectPool