Ensure entry resource is idempotent

This replaces #14 and is another approach to #9.

This makes the `ssh_known_hosts` resource idempotent.  The resource previously notified on every chef run, despite not making file changes.

This fixes the reporting issue and simplifies the provider:
  * Supports whyrun
  * Doesn't add unnecessary comments to the known_hosts file
  * Sorts and dedups known_hosts file

https://tickets.opscode.com/browse/COOK-3453