Allow disabling lazy loading - 3.x
Sure - `ForeignKeyField` has an `accessor_class`, which is `ForeignKeyAccessor`. This is a descriptor and it implements a `get_rel_instance()` method, which is what does the actual query for the related obj.

I haven't tested this, but probably something like this ought to work:

```python
class NoQueryForeignKeyAccessor(ForeignKeyAccessor):
    def get_rel_instance(self, instance):
        value = instance.__data__.get(self.name)
        if value is not None:
            if self.name in instance.__rel__:
                return instance.__rel__[self.name]
            else:
                # Ordinarily this would be a query...Instead let's just return the FK col value?
                return value
        elif not self.field.null:
            raise self.rel_model.DoesNotExist

class NoQueryForeignKeyField(ForeignKeyField):
    accessor_class = NoQueryForeignKeyAccessor
``` Makes sense. Thanks! I've got an implementation in a branch you can check out: https://github.com/coleifer/peewee/tree/feature/disable-fk-lazy-load

It adds an option to `ForeignKeyField`, `lazy_load`, which defaults to True but can be set to False to prevent lazy loading the related model instance. Perfect! I briefly played with it and that works well. Merged into master, will be included in the next release.
I'm upgrading from 2.x to 3.x (finally) and had previously disabled lazy loading of foreign keys via method 2 from #1248. It looks like descriptors have changed/been removed in 3.x. Is there a way to achieve a similar behavior now? Thanks.