boost::any alternative