Parse command output

Allow parsing of stdout/stderr in the command module, so that things like `failed_when`, `changed_when`, and `register`/`when` conditionals are much easier, and more robust.

eg (I know that this would be easier with the exit code, but it's just for show; there are plenty of other, more complex uses):

```
- name: validate downloaded dmg
  command: hdiutil verify ~/Downloads/command_line_tools_for_os_x_10.9_for_xcode_6.dmg -plist
           parse_stdout=plist
  register: dmg_verify
  failed_when: "dmg_verify.parsed_stdout.calculated['Checksum Value'] != dmg_verify.parsed_stdout.expected['Checksum Value']"
```

Based on fixes in #162