Added processEvents() call to TorrentManager and update clients to use it including adding a seed method to the FetchStratedegyManager to seed data.

Change-Id: I98e4c794c98ca35765df968c2cf7c4fe1e622595
diff --git a/src/fetching-strategy-manager.hpp b/src/fetching-strategy-manager.hpp
index 53de939..a34afa0 100644
--- a/src/fetching-strategy-manager.hpp
+++ b/src/fetching-strategy-manager.hpp
@@ -22,8 +22,9 @@
 #ifndef FETCHING_STRATEGY_MANAGER_HPP
 #define FETCHING_STRATEGY_MANAGER_HPP
 
-#include <ndn-cxx/interest.hpp>
 #include <ndn-cxx/data.hpp>
+#include <ndn-cxx/interest.hpp>
+#include <ndn-cxx/util/time.hpp>
 
 namespace ndn {
 namespace ntorrent {
@@ -66,6 +67,12 @@
     struct status {
       double downloadedPercent;
     };
+    /**
+     * @brief Seed downloaded data for the specified timeout.
+     * By default this will go into an infinite loop.
+     */
+    virtual void
+    seed(const time::milliseconds& timeout = time::milliseconds::zero()) const = 0;
 
   private:
     /**