socket.io payload decoder support

add method decodePayload() of ElephantIO/Payload.php
add method of Singleton pattern instance

use : 
```php
<?php
// ElephantIo/Payload.php
class Payload
{
    ....
    /**
     * @return Payload
     * Singleton Pattern
     */
    public function getInstance() {
        static $obj = null;
        if ($obj == null) $obj = new Payload();

        return $obj;
    }
    ....
}
?>
```

```php
<?php
$payload = &Payload::getInstance();
$payload->setPayload($encodingPayloadData);
echo $payload->decodePayload()."\n";
?>
```

If you're working with the payload's object attributes, maybe put something in cache here, to avoid recalculating everything ?

I'm not really a huge fan of stocking everything in a property. Except if the payload is used only once per messages.