ncm-download: Fixed false failure bug, added noaction support

Fixed the problem where occasionally curl reported a failure (inspite of
using the option to prevent this) which caused ncm-download to
incorrectly report an error.

Modernised to include --noaction support. Component already had unit
tests in spite of using LC::Check::status. It turns out that
LC::Check::status *does* support noaction so is test safe.
We are stuck with quite an old creaky version of CAF. Which is a shame as there are a bunch of changes I would like to make to CAF, etc.