Sorry, I was confused with `OptionsResolver::setDefaults`.

http://symfony.com/doc/2.3/components/options_resolver.html#default-values-that-depend-on-another-option

Before merging this PR, could you:

> Rebase from the 0.3 branch
> Typehint $options (`function (Options $options, $value)`)
> Squash both commits