Added more RepresentativeString tests and minor change to hash()
WFA: refactor to remove unused parameter to function
WFA::intersect_worklist: change to use WeightMaker::make_weight(ITrans,ITrans)

WeightMaker has two overloads of make_weight: one that takes a pair of weights and one that takes a pair of transition pointers. When I was taking eclose as I went along, I couldn't use the trans/trans version because what I was calling it on corresponded to paths, not to transitions. However, when changing intersect_worklist to do the modified intersection that keeps epsilon transitions, we can go back to it. And now I need it, because I want the symbol on the edge to make part of the weight.