Changed persistence strategy to not use a hierarchy

Previously you had:
Honda (make_id:1) => 2000 (year_id:1)
Acura (make_id:2) => 2000 (year_id:2)

Now you have:
Honda (make_id:1) => 2000 (year_id:1)
Acura (make_id:2) => 2000 (year_id:1)

Any option  is stored only once per value. This does have the consequence that GMC & Chevrolet both have a model named 'B7'. If someone wanted to rename that it would rename it for both models. There is an easy workaround (export, clear the schema, do your renaming, import back in).. plus how often is that going to really happen? Someone renaming a model and only wanting it in one place? We can always prompt them later if they want to "rename for all makes, or just 'this' make". That feature would piggyback off the 'split' feature (which is the opposite of the merge feature).

This change will also allow to easily build a UI where the user can select their YMM in any order. They could pick their make or their year first, doesn't matter now. Also imports are way faster, unit tests run faster... lots of unit tests were retired, and lots of code was retired that was starting to get messy anyways. All around this should be a positive change if it doesn't break anything, lol. All the tests pass and I did some manual testing, so we should be good.

Also, vafwheel, vafpaint, vaftire used the year_id to reference a fitment, now they use the vehicle_id from the definitions table which is way cleaner.