Replace yup validation with vuelidate, split up editor into multiple components
- Replace yup validation with Vuelidate to simplify validation of nested collections and allow easier splitting of components into sub-form components, also reduces boilerplate
- Split Editor.vue into sub-components for each editing step, and also for other collection items requiring validation - Duration, Ingredient and Instruction
- Make editor more mobile friendly and restructure for desktop, now a two-column view for the editor progress and form on desktop and separate item adding components specific to mobile
- Fix new recipes defaulting database ID to int.MinValue