virtual Target *create_target(const std::list<Target *> &, const std::string &) const;
virtual Task *run(const Target &) const;
virtual Target *create_target(const std::list<Target *> &, const std::string &) const;
virtual Task *run(const Target &) const;