Accept an Array (as well as string) for options.exec

When an array is given, don't do any splitting on spaces.

This is a simpler alternative to #418 which doesn't affect the CLI interface, just the API. Although it does fix a bug in the CLI's `{{filename}}` and `{{pwd}}` expansion as a side effect, which I've added a test for too.
That's a fair response.

I do think the users of the api will still expect to be able to quote the "grouped entities" but I agree, you've improed the api.

Its currently passing tests, so I'll merge in the morning and I'll likely deploy to npm over the weekend (lots of fixes landed over the last 48 hours too!).

I think it'll be worth updating the docs too at some point (I'm not sure what route ppl take, the wiki?)

Cheers so much for the PR and updating to work towards the values of nodemon!