Add Name class.

Add Name class to avoid using primitives.
Use Name for Employer in specs.

Refactor specs so that the example Employer is initialized with a Name instead of a String.
Employer uses Name.

Update Employer so that it reports correctly when given a Name instead of a String.
Delete unused lib/examples.rb.
Add and use Helpers::unposted_job.

Refactor specs to use the new Helpers::unposted_job instead of generating one manually.
Create Jobs with Titles.

Refactor specs and helpers to initialize Jobs with the new Title class instead of String.

Update UnpostedJob to report its title properly when it's a Title instead of a String.
Use Helpers::unposted_job.

Update spec to use Helpers::unposted_job instead of initializing directly, but in every instance.
Use Name with Jobseeker.

Update specs to create Jobseekers with Names instead of Strings.

Update Jobseeker to report on its name correctly when initialized with a Name instead of a String.
Refactor JobSaver to fit RoleTaker pattern.

Refactor JobSaver into a role-style module that classes can take on through RoleTaker#take_on_role.

Update specs to reflect the change of JobSaver to a RoleTaker-compatible module.
Reorder ::when_reporting calls.

Move calls to Reports::when_reporting down to the bottom of each class.
Move JobType to lib/labels.rb.

Move JobType from lib/jobs.rb to lib/labels.rb to better reflect its usage.
Initial filter implementation.

Add PostedJobFilter class, which various filter methods will use.

Add UnpostedJob#passes_filter? and PostedJob#passes_filter?, which test the instance against the given filter object, checking various #on_* methods.

Add JobList#filtered_by, which returns a new JobList populated with those jobs that passed the given filters.
Use JobList#filtered_by.

Refactor EmployersPostedJobReportGenerator to use JobList#filtered_by instead of the more cumbersome PostedJobList.
Remove unused PostedJobList class.
Initialize PostedJobFilter.

Make PostedJobFilter::on_posted into an instance method instead of a class one. Other filters will need to be initialized, so this will make usage more consistent.
Add and use PostedByFilter.

Add PostedByFilter class.

Update PostedJob#passes_filter? to check for #on_posted_by, used by PostedByFilter.

Fix JobList#filtered_by so that it only allows in jobs that pass all the filters, not just any filter.

Refactor EmployersPostedJobReportGenerator to use PostedByFilter instead of EmployerJobList.
Remove unused EmployerJobList class.
Add spec for PostedByFilter.

Add spec for PostedByFilter in regards to JobseekerList, confirming that it filters down to jobseekers that have applied to jobs posted by the given job-poster.
Add JobApplier#passes_filter?.

Add JobApplier#passes_filter, checking whether any of its jobs pass a given #on_posted_by filter.
Add Jobseekers#include?.