public void Execute(Item startItem)
        {
            // get items
            var items = ItemRetriever.GetItems(startItem);
            // items -> request models
            var requestModelCollection = RequestParser.Convert(items);
            // serialize request models
            var requestData = RequestModelCollectionSerializer.Convert(requestModelCollection);
            // execute request & get response
            Task <string> task =
                Task.Run(async() => await KeyPhrasesRequester.GetResponse(requestData));
            //var responseData = KeyPhrasesRequester.GetResponse(requestData);
            // parse response
            var responseModelCollection = ResponseParser.Convert(task.Result);

            // handle parsed response
            ResponseHandler.DoHandleResponse(responseModelCollection);
        }