Put enabled bundles in a configuration file

# Enabled bundles in a configuration file

## The problem

The simple task of enabling programmatically a bundle is too complex: it involves [Reflection and Zend engine's lexical scanner](https://github.com/sensiolabs/SensioGeneratorBundle/blob/9e29c8e898b98da6a3b63de80ad7679305262308/Manipulator/KernelManipulator.php#L46).

## The proposal

Put enabled bundles in a configuration file:

```php
    <?php
    // File: app/AppKernel.php

    class AppKernel
    {
        public function registerBundles()
        {
            $bundles = $this->getConfiguredBundles(__DIR__.'/config/enabled_bundles.yml');

            // Bundles can still be enabled manually:
            // $bundles[] = new Acme\DemoBundle\AcmeDemoBundle($this);

            return $bundles;
        }

        protected function getConfiguredBundles($configurationPath)
        {
            return Yaml::parse(file_get_contents($configurationPath))['enabled_bundles']; // Replace with better logic
        }
    }
```

```YAML
    # File: app/config/enabled_bundles.yml
    enabled_bundles:
        - Acme\DemoBundle\AcmeDemoBundle
```

## Impact on the community

### Bundles installation documentation

Current bundle installation instructions will be still valid.

### KernelManipulator

BC break on KernelManipulator implementations, but easy to fix (manipulating a YAML file instead of actually modifying the source code).
It all depends on how many people would be affected.
Except the [SensioGeneratorBundle](https://github.com/sensiolabs/SensioGeneratorBundle), do you know any library that would be affected?

## What do you think?

This is just a draft, so if you have any improvements, be sure to propose them!
If the idea of putting enabled bundles in a configuration file is terribly silly, go on and say it: I'd like to know your arguments.