Fix failing unit test on OSX.

The test's implementation of argument expectations for Berkshelf::FileSyncer
relies on the underlying platform-specific temp directory returned by Dir.mktmpdir().
This changes the test to use OSX default matches.

The alternative would be to allow sync() to take an optional pre-existing temp dir to mock,
and pass it in.
Add note about graphiviz requirement.
Merge branch 'master' into berks_info_1345
Load with .from_json() method. .from_file() expects to interpret ruby.