Propose change to update_collate to fix issue #302

This change to `update_collate` should resolve issue #302 by making `update_collate` genuinely do nothing if no `@includes` are found in the package being updated.  I have also modified the documentation slightly to clarify what `update_collate` (now) does.

Without this change `update_collate` sets the Collate field in the DESCRIPTION file to blank (to be precise, removes it entirely) if no `@includes` are found.  This effectively wipes out any Collate field values that were manually entered.  This is undesirable - for example a number of the testthats in devtools use template packages where the Collate sequence matters, and where the Collate field has been entered manually.

I have also coded a testthat for this fix.  I will submit that as a separate pull request.

Once / if this pull request is accepted, there is a simple fix for issue hadley/devtools#623

Any advice and feedback most welcome

Geoff

PS Apology for the slightly misleading title on the first commit message from the chain of commits while I was working on this - I am still learning how to use git properly.