setup models and associations