Refactored tests to be more sensible.
Composite Weave now takes the elements as parameters to allow duplicate variable names and be sane.