abstract and make modular insurance_companies so they can also be applied easily to other models, like companies