change any_instruction interface based on boost::variant from boost::type_erasure