Moving callback firing code into its own method.

I've just refactored the `end` method, pulling out the code that creates a `SimpleXMLElement` and calls `call_user_func_array` into it's own method named `fireCallbacks`.

My use case for this is that I want to use `xmlStreamReader` to count the number of times a path is matched in large XML docs. Speed is important so I don't want the overhead of creating a `SimpleXMLElement` object and calling `call_user_func_array` everytime a path is matched. In my own class I'm planning to extend `Parser` and override `fireCallbacks` to increment a counter var instead.