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.
i'm not a big fan of this. you can do the `warn` with `join(" ", @{$proc->{COMMAND}})`, no real need for new temporary list imho. (should be dealt with in https://github.com/quattor/CAF/issues/23, which looks trivial.)