How to create Rails models w/ multiple complex associations?

I am trying to figure out how to create ActiveRecord models with
associations that can yield the same results as this SQL query:

select login, first_name, last_name, email_address from accounts inner
join people on = accounts.person_id inner join
email_address_people on = email_address_people.person_id inner
join email_addresses on =
email_address_people.email_address_id inner join email_address_types on = email_address_people.email_address_type_id
where email_address_types.email_address_type = 'account';

The table structure is as follows, and assumes each table has an id per
normal ActiveRecord convention:

id : int
person_id : int
login : string

id : int
first_name : string
last_name : string

id : int
person_id : int
email_address_id : int
email_address_type_id : int

id : int
email_address : string

id : int
email_address_type: string

I need the models to be fully functional, and not limited by things like

How do I create the associated models that make this possible?

Chris Benson