Handler should be defined on the Node subclass

Defining `handler` as a choice on `conman.nav_tree.models.Node` makes no sense. What does it mean to have a `PageNode` with a `ArticlesAppHandler`? Nothing, that's what.

Instead, `handler` should be a required attribute on the subclass.

In simple cases this would be a string...

```python
class PageNode(Node):
    handler = 'conman.pages.handlers.PageHandler'
```

...it could be defined in the database...

```python
class ChoiceNode(Node):
    HANDLER_CHOICES = (
        ('path.to.Choice1', 'Choice1'),
        ('path.to.Choice2', 'Choice2'),
    )
    handler = models.CharField(choices=HANDLER_CHOICES)
```

...or it could be dynamic...

```python
class DynamicNode(Node):
    @property
    def handler(self):
        if datetime.datetime.now().hour < 12:
           return 'path.to.MorningHandler'
        return 'path.to.AfternoonHandler'
```
Yeah, I realised that there was something odd going on there, but wasn't sure how to name it to avoid the confusion.

`SimpleHandler` is part of the API. Maybe it could have a more descriptive name, but not sure what.

`BasicHandler/Node/Detail` is just an example for the docs. Perhaps it should be `ExampleHandler`?