I am wondering about how to set up hierarchical taxonomies. For example say I have a vocabulary called Vehicle Make which consists of terms Audi and Honda, then I have a further vocabulary called Vehicle Model which consists of A4, Civic and Accord. So now say I wanted to create a vehicle registration content type with term reference fields corresponding to the two vocabularies listed above. Is there a way to define an is-a relationship between these vocabularies, I.E. an Accord is a Honda and an A4 is an Audi and therefore the selection in the Vehicle Model term reference would be dependent upon the selection in the Vehicle Make term reference. So if I select honda for the make I should be able to select Accord or Civic for the model and if I select Audi I should be able to only select A4. Is this something that can be done with Drupal taxonomy system?
Yes but they would not be 2 vocabularies, they would be hierarchical terms in 1 vocabulary, ex:
Cars -Ford -Focus -F150 -Mazda -6 -9 -Protege
You can have infinite levels of parents.
This module would probably be a huge time saver for you: http://drupal.org/project/hierarchical_select
Edit: I should add that since Drupal 7 provides taxonomies as fieldable entities, you could very easily attach a "Car photo" field or the like to your "cars" vocabulary and achieve a lot of functionality rather quickly.
You can construct your hierarchy using the core module taxonomy. Go to admin/structure/taxonomy, create your vocabulary and add your terms. The form that lists your terms precedes the name with a graphic arrow widget (points in four directions. Selecting that widget and dragging can reposition the terms in parent child relationships, and your done! The Taxonomy Manager module can help you add large quantities of terms to a vocabulary very quickly as well.