Use AdminObjectEdit for all edit pages.

This requires https://github.com/silverorange/admin/pull/16
Update AdminComponent and AdminSubComponent to use loadByShortname().

I've left the deprecated loadFromShortname(), but since we have so few places to update it, we should kill it in the near future.
Code cleanup and class map everything.

Might as well clean up the files while I have them open.
Better methods for saved messages.

Most subclasses should only need to customize the message text in getSavedMessageText() but add a few methods to allow subclasses that need more control of the whole process.