Add function for merging together multiple assoc spaces

One more kind of test I'd like to see: does the code give the expected results when n=1 or n=2? 

The n=2 case is, of course, the `combine_eigenspaces` code we already had, but it would be reassuring to check that the results are the same up to equivalence. And according to Andrew, the `redecompose` function should now be equivalent to "combining" a list of one eigenspace.