allow parameters in extension

This is a **BC Break**.

You must change `phpspec.yml` accordingly: 

    # before
    extensions:
        - Some\Extension

    # after:
    extensions:
        Some\Extension: ~
        # or, and that's why
        Some\Other\Extension:
            option1: ~


I started to spec this until I realised this class is not speccable with current impl.

We should extract this extension loading mechanism to its own class.
I would do the check only once:

```php
foreach ($val as $class => $extensionConfig) {
    if (is_integer($class)) {
        $class = $extensionConfig;
        $extensionConfig = array();
    }

    // Allow null for easy syntax "- Extenstion: ~"
    if (!is_array($extensionConfig) && null !== $extensionConfig) {
        throw new RuntimeException('Invalid config');
    }

    // Existing code here, plus the extra argument in load()
}
```