refactor FieldPanel() and InlinePanel() to make it clear that they don't really have any state of their own, and ought to be plain functions...
refactor FieldPanel and InlinePanel into functions that return classes, making things slightly neater than classes called SomethingInstance. (We still need a good way of subclassing those internal classes though...)
make the inner class of FieldPanel an abstract class BaseFieldPanel, which is concrete-ified by FieldPanel, and can now be subclassed if we want to. Zing!
do the same BaseFooClass trick on InlinePanel
avoid running validation / pre-save / post-save handlers on admins that are about to be deleted
define RichTextField as a field type that receives a special FieldPanel type
add hallo.js for rich text editing