Bugfix: segfault with duplicate match fields.

Duplicate match fields caused a segfault in the destructor due to the
field num being present multiple times in the cur_tlvs_ vector, and the
destructor iterating over those entries and consequently deleting entries
in the oxm_tlvs_ multiple times. For reference, the destructor looks
like this:
Match::~Match() {
    for (std::vector<uint8_t>::iterator it = this->curr_tlvs_.begin();
        it != this->curr_tlvs_.end(); ++it) {
        delete this->oxm_tlvs_[*it];
    }
}