Allow required/scoped fields for belongs_to

In the process of adding this feature, I discovered a few bugs and
incorrect specs. When reading an attribute that was aliased,
it would never find it on the attribute hash because the attribute
is an alias. In the event that it can't read it from the attribute hash,
I will send it as a last ditch effort.

Also, a few associations were being incorrectly tested, so I modified
the tests.