Big additions

Added behavior system, successively removing all the remaining bugs.

Added abstract and real buttons, and some options to make it easier for
menus to manipulate buttons.

Removed unused/forbidden constructors.