[Chef 4983] Undo changes to Chef::Client public API and add new public API for expanding the run list

* Restores the return value of `Chef::Client#build_node`, which was inadvertently changed in a previous commit.
* Adds a public API in `Chef::Client#expand_run_list` to only expand a run list without any of the attribute modification done by `#build_node`. chefspec is currently accomplishing this by monkey patch, adding this API will improve compatibility/stability of chefspec and chef.