Allow state creators to delegate to other state creators

Something like this:

```javascript
self.states.add('states:start', function() {
    return self.user.metadata.registered
        ? self.states.create('states:main_menu')
        : self.states.create('states:register');
});
```