Ensure unique date ranges for job_title_assignment

Using a db check constraint, ensures a user's job_title_assignments date
ranges do not overlap. Ensures a single expense will only ever have a
max of 1 job_title_assignment, so that it is clear what the correct
job_title and department is for that expense.