First prototype of Match working over boost::variant