Refactor contract types model
Resolves several issues in #853 (closed)
- Refactor the model used to store contract types since a country can have different contractor and employee factors that are different from the default value of 1.17
- Generate the contract types in the handbook based on information from
data/contract_types.yml