Make Composer task idempotent

This is still a temporary fix, since Composer probably needs its own module that properly checks for things. But at least it will not display the task as `changed` when it actually didn't change anything :). 

This fixes #17 
Another alternative is to check the output from `composer_result` and use it as another condition for `changed_when`, that way we catch both when  there's an error and when composer installs something.