Generic popup implementation #3

Alle popup types now are stored in their own file, themes and plugins
are now able to extend the supported option types and/or override ones
defined in the framework, similar to widgets.