Add credit function

At first glance, it may seem 'Cast' and 'Crew' should have been used instead of creating 'CastMember' and 'CrewMember', but they are not the same.

Both 'Cast' and 'Crew' definitions means a group of people. The 'Cast' class currently represents a character played by a person and the 'Crew' class currently represent a job worked by a person. I suggest that 'Cast' and 'Crew' classes both be changed to 'Character' and 'Job'.

I kept the long line(greater than 80) lengths to keep the same style that is present in the current files.
I also kept the current way of doing testing, but I feel the test cases can go much faster.