Fix tags order

#141
Why were tags std::vector anyway, not like random access was used anyway.