Added proper path resolution in Ruby to support relative or absolute paths
Added validation for missing or unloadable files
Changed test assertion to use approval-style differential of YAML-formatted outputs