Model.prepared not called for side loaded .join records
I believe this is correct, if somewhat odd, behavior.  I'm going to mark this as wontfix for now.
 To my understanding, the contract is that if you are going to populate a model, you will call "prepared" on it. The idea that sometimes a model I use will have prepared called, and sometimes not, sort of makes prepared broken/untrustworthy to use.
 Yeah... you're right.  I'll look into it.

I am using query.join(User) to enhance the performance of a set of queries. My model also defines a Model.prepared so I can preinitialize some virtual fields. It seems that when a record is loaded via the .join, .prepared isn't called. I ended up doing

```
def prepared(self):
    super(MyObject, self).prepared()
    self.user.prepared()
```

to account for it.

(hopefully not another non-issue)
