Questions 1 and 3 answered. Question 2 has a test case, but I am unable
to see if if it works as I am unable to get phpUnit to work correctly.