Fix a serious bug in the edge and face pruning routines

Although HASH_DEL was deleting the last_[edge|face], free was referring
to [edge|face]. This caused seg faults when duplicate edges or faces
were actually present.