Allow spying on methods

Now that Pinkerton now depends on ext-uopz, it's trivial to extend
Pinkerton to spying on both static and instance methods, regardless of
their visibility.

Rather than use the Jasmine-like `spyOn($class, $method)` syntax, use the
more PHP-like `spyOn(array($class, $method))`.
Support methods specified with a class instance
Run PHP Coding Standards Fixer

Run `php php-cs-fixer --config=sf23 --fixers=+short_array_syntax .`
Require PHP version 5.4 or greater
Document the API in the README
Manually back up functions (fixes GH-4)

The spy returned by Pinkerton::spy should wrap a copy of the original
function or method because it's replaced by a handler that invokes the
spy. Because of this, spyOn( ... )->andCallThrough followed by an
invocation segfaults.

This regression was first introduced in b89fdc1.
Merge branch 'develop'