Add a `SerializerServiceProvider`.

Usage
-----

```php
<?php

use Silex\Application;
use Silex\Provider\SerializerServiceProvider;
use Symfony\Component\HttpFoundation\Response;

$app = new Application();

$app->register(new SerializerServiceProvider);

// only accept content types supported by the serializer via the assert method.
$app->get("/pages/{id}.{_format}", function ($id) use ($app) {
    // assume a page_repository service exists that returns Page objects. The
    // object returned has getters and setters exposing the state.
    $page = $app['page_repository']->find($id);
    $format = $app['request']->getFormat();

    if (!$page instanceof Page) {
        $this->abort("No page found for id: $id");
    }

    return new Response($app['serializer']->serialize($page, $format), 200, array(
        "Content-Type" => $app['request']->getMimeType($format)
    ));
})->assert("_format", "xml|json")
  ->assert("id", "\d+");
```
Make the event dispatcher class configurable.
Use $app['db'] instead of $conn and add autoinc

`$conn` is not `$this->conn`and is identical to `$app['db'].
Moreover, column `id` must be auto-increment.
merged branch mageekguy/master (PR #471)

Commits
-------

6d3e410 Use $app['db'] instead of $conn and add autoinc

Discussion
----------

Use $app['db’] instead of $conn and add an auto increment

`$conn` is not `$this->conn`and is identical to `$app['db'].
Moreover, column `id` must be auto-increment.

---------------------------------------------------------------------------

by igorw at 2012-08-28T13:08:50Z

Apart from that thing, looks good. :+1:

---------------------------------------------------------------------------

by fabpot at 2012-08-29T13:06:24Z

Can you squash your commits before I merge? Thanks.

---------------------------------------------------------------------------

by stof at 2012-08-29T19:55:15Z

@mageekguy when squashing, you need to force the push after that. Here, you merged your remote branch, meaning you kept all the older commits as well.

---------------------------------------------------------------------------

by mageekguy at 2012-08-29T20:06:49Z

Know it, but my push was refused because not fast-forward.
So i pull and push, with this result.
And i don't kown what to do know :/.

---------------------------------------------------------------------------

by igorw at 2012-08-29T20:32:21Z

You need to force push. Like this: `git push --force origin master`.

---------------------------------------------------------------------------

by stof at 2012-08-29T23:24:27Z

@mageekguy not being a fast-forward is expected when squashing as you are rewriting the history.

And in such case, git tells you about both solutions (merging and forcing the push). You choose the wrong one :)

---------------------------------------------------------------------------

by stof at 2012-08-30T09:42:38Z

hmm, looks like you messed something when rebasing

---------------------------------------------------------------------------

by mageekguy at 2012-08-30T11:13:46Z

Seems to be ok now.
Can you confirm ?

---------------------------------------------------------------------------

by stof at 2012-08-30T11:14:28Z

you still have 2 unrelated commits in the branch

---------------------------------------------------------------------------

by igorw at 2012-08-30T11:51:14Z

Now you need to fix that whitespace issue and it should be mergeable. :)

---------------------------------------------------------------------------

by igorw at 2012-08-30T12:48:02Z

Alright, now it looks good.
More logical way of including the base admin path. (closes #446)
[Doc] Fixed typo in security
[Doc] Fixed some missing use statements in the security
[Doc] Fixed markup in security doc

Changed title level of "Defining a custom Authentication Provider"
chapter to be more consistant with others.
merged branch lyrixx/patch-1 (PR #475)

Commits
-------

9851904 [Doc] Fixed typo in security

Discussion
----------

[Doc] Fixed typo in security
merged branch lyrixx/patch-2 (PR #476)

Commits
-------

e3c757a [Doc] Fixed some missing use statements in the security

Discussion
----------

[Doc] Fixed some missing use statements in the security
merged branch lyrixx/patch-3 (PR #477)

Commits
-------

117e284 [Doc] Fixed markup in security doc

Discussion
----------

[Doc] Fixed markup in security doc

Changed title level of "Defining a custom Authentication Provider"
chapter to be more consistant with others.
Added symfony/validator to require section
merged branch bksunday/patch-1 (PR #478)

Commits
-------

074c9f3 Added symfony/validator to require section

Discussion
----------

Added symfony/validator to require section

Après des mois sans avoir touché à silex, j'ai rencontré quelques petit problèmes entre la documentation sur silex.sensiolabs.org et le code qu'on doit faire.

En voila une!
Switch dependencies to stable versions
Adjust minimum-stability in skeleton files
Update doctrine/dbal require-dev to 2.2 branch
Update doctrine constraint for fat skeleton as well (danke @stof)
simplified form factory creation
Fixed typos
merged branch pborreli/typos (PR #482)

Commits
-------

5508c8b Fixed typos

Discussion
----------

Fixed typos