Adding csrf_protect option for routes

This is a proposition corresponding to issue #9273

## Proposed feature

This would allow passing the `csrf_protect` option to true in a route like this:

```php
<?php

/**
 * @Route("/account/delete", name="delete_account", options={"csrf_protect":TRUE})
 */
public function myAction()
{
    // The logic
}
```

Then:

* A `_csrf_token` parameter will be automatically injected in the URL on generation time with the route name as intention
* An event listener will check that the `_csrf_token` is passed and correct

## Changes

There is two main changes to achieve this:

* The `options` of a route are now available via the `UrlGenerator`, I added a `UrlOptionsInterfaces` that can be implemented by the generator to provide it (this also implies dumping them in the cache file)
* The CSRF logic is in the `FrameworkBundle` of symfony, the token is injected in the `Router::generate()` method and checked in a new listener (`RouterCsrfListener`)

Note that I admit that passing the router a Form service is not really good, I guess the CSRF provider should move in the Security component one day, any idea about that?