Foreman.source can be an array instead

Looks like we'll be able to use operative's dependency injection to handle this instead of requiring a single concatenated source.