Add hasOne support, belongsToMany is going to be a disaster, must. re. factor. soon.