Remove contacts code from agreementsvm and put in contacts.ts.

Make the code more modular and easier to manage.
Add the T4 file meant to be added to last commit.