Cookbook refactoring & abstracting logic to Ruby(gems): Seth Vargo (Opscode)