allow source param to concat::fragment to be a string or an Array

This is resolve a regression preventing an array of string(s) being passed to the fragment file resource's source parameter.
Merge pull request #103 from jhoblitt/fragment_source

allow source param to concat::fragment to be a string or an Array
Initial pass at test to ensure fragments accept and properly handle the underlying file source attribute.
put the shell() calls into before{} blocks so that they're executed meaningfully.  Testing to make sure a file doesn't exist shouldn't be as much of a hack as that is. I'm obviously missing something in the framework, but this works.
Merge pull request #104 from dreamlibrarian/fix/fragment-source-test

Test concat::fragment for source => [] compatibility.