PHP_Token_FUNCTION::getName sometimes returns the wrong name

Given the following code:

```php
<?php
$class = '<?php
function foo(Exception $e) {}
$func = function(Exception $e) {};';
$stream = new PHP_Token_Stream($class);

foreach ($stream->tokens() as $token) {
    if ($token instanceof PHP_Token_FUNCTION) {
        echo $token->getName() . PHP_EOL;
    }
}
```

the output is:
```
foo
Exception
```
when it should be:
```
foo
anonymous function
```


This PR should fix this issue by changing the way the `getName()` method finds the function name.