Allow editing recipes
Split schema functionality into its own module