[WIP] Feature/component generator

KJSenchaExample Branch: https://github.com/Rovak/KJSenchaExample/tree/feature/component-generator

Component Generator Branch

This patch introduces a new feature where you can create Ext JS components on the PHP side, sometimes it's necessary to create complex windows which require a lot of server-side logic to create. 

You can define server-side components in a ServiceManager like this:

```php
    'components' => array(
    	'invokables' => array(
    		'Application.php.Window' => 'Application\ExtJs\Window'
    	),
        'factories' => array(
            'TestComponent' => function($sm) {
                return new Ext\Panel(array(
                    'title' => 'Test Component'
                ));
            }
        )
    ),
```

And then on the client-side you can load the windows with the Ext.ComponentLoader like this:

```javascript
Ext.create('Ext.Window', {
    width: 800,
    height: 400,
    loader: {
        url : App.basePath + '/kjsencha/data/component',
        renderer: 'component',
        params: {
            className: 'Application.php.Window'
        },
        autoLoad: true
    }
}).show();
```

or

```javascript
// Application.data == KJSencha.data.Factory
Ext.create('Ext.Window', {
    width: 800,
    height: 400,
    loader: Application.data.createCmpLoader('Application.php.Window')
}).show();
```

In a later patch the components can be added to the bootstrap so you can extend the dynamically defined
ExtJS classes in your MVC application.

Simple example, this should be configurable in the bootstrap options later

```php
$bootstrap->addComponent($componentManager->get('Application.php.Window'));
```

```javascript
Ext.define('Application.view.Window', {
	extend: 'Application.php.Window'
});
```