Replace's boost::variant with a std::function removing the dependency on Boost.Variant.
Caveat: using a std::shared_ptr is not the same as using an std::unique_ptr but the overhead is on construction only. Since std::function requires CopyConstructible, this is the simplest thing I found that works.
I also updated the header of some examples again to include nonius_single.h++ since they were missing the main function.
Replace's boost::variant with a std::function removing the dependency on Boost.Variant.
Caveat: using a std::shared_ptr is not the same as using an std::unique_ptr but the overhead is on construction only. Since std::function requires CopyConstructible, this is the simplest thing I found that works.
I also updated the header of some examples again to include nonius_single.h++ since they were missing the main function.