Respect sti_name

The identifier stored in the `inheritance_column` should always call `sti_name`. In some places `class.name` is being called instead, which is only a problem when `sti_name` is changed from the default. 

Maybe you could use an existent model in our test suit, maybe change https://github.com/aceofspades/rails/blob/bugfix/sti_name/activerecord/test/models/item.rb , just so we dont create new model only for this test.