Switch to resource guards instead of just returning
Include the helper methods in the Resource, Recipe, and Provider