Re-factor Chef package into io.Reader interface

* Split chef into Reader and Node implementations for separation of concerns in
  the single package. Subject to change later. Update tests.
* Remove porcelain implementation and unused tests
* Remove legacy "from file" implementation using ioutil.ReadAll() as it
  was side stepping the whole idea of this Read()/io.Reader interface.