YAML backend, Inventory coordinates/range stuff

Card https://trello.com/c/PlUaniIQ

 - Removed `functions.sorting.PreferencesRuleArea` as it is being replaced with `utils.inventory.InventoryRange`
 - Added some backend YAML code
 - Worked with the YAML code to use more exceptions.
 - - I've kinda had a change of heart regarding exceptions.
 - Removed `CARROT` from the `food` default item group in `itemgroups.yml` as that matches seeds, the real item is `CARROT_ITEM`
 - Working on the inventory range issues.  See red-flagged cards.
 - Changed `Provo.Debug` to true **for testing purposes*
 - Redid class `utils.inventory.InventoryCoords`.
 - - Now has a final `Index` field instead of calclulating every time
 - - Fixed a bug where parsing index for chest wouldn't work
 - - Now uses "actual" fields, see source for more
 - Added start/end checking on `InventoryRange`