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.
Agreed, each `warn()` should stand on its own. I'll go back to `\n` unless someone comes up with something more exciting.