Add support for test fragments

Now that the module controller supports calling test elements, we can define test fragments at the top of the file and reference them later in the test plan. Complex user workflows can be built simply by picking which fragments to fire in a particular order, without having to duplicate a lot of code.