Clean up and document the Panel API.
Compatibility with Django 1.7.
Update all panels to follow the public API.
Degrade docs because I can't put a flake8 ignore :'(