Feature/associations

**DO NOT MERGE!** (WIP)