Throw better error when a stack can't get an associated record class

This updates record stacks to throw a better exception when an
association's record class can't be determined. This typically
occurs when a polymorphic's belongs to association doesn't have
it's foreign type attribute set. When this occurs, the active
record method returns `nil` which previously caused confusing
no method errors. This fixes the confusing errors by throwing a
specific one describing the exact problem.