Allow StringPresenter::presentCallback() to work with static classes

When given a callable array, StringFormatter assumes that the first part of the array is an object, even though it may also be a string. 

The StringFormatter is updated to check to see if the first parameter is an object. To allow distinguishing between static and non-static callables, the presentValue() method uses the existing presentValue() method to present the object.

why creating a collaborator here ? You never use it except to get the class name, so you could use the class name directly