Balanced.Shapeshifter

I've been working on the Balanced.Shapeshifter namespace, which will manage modifications to the application during runtime. 

The API will look like:
```js
Balanced.Shapeshifter.register('some-addon', function() {
  this.extend('template:new-page', /* Handlebars template function */);
  this.extend('view:new-page', {
    foo: 'bar'
  });
});
```

Extensions will be registered upon logging in, but not loaded. It is up to the dashboard to determine when to load and unload extensions:

```js
Balanced.Shapeshifter.load('some-addon');
Balanced.Shapeshifter.unload('some-addon');
```

Some problems:
- the `extend` helper only works on controllers, templates, views and components right now.

Preliminary extension:
http://github.com/daliwali/balanced-admin