Major refactor actiontypes into a registry format instead of enum. This allows us to dynamically add/remove whenever we want, which opens the door for custom action types injected by other plugins. There's a lot of testing to do, and lot of work validating the data, making sure the user can control it, tracking the source plugin, etc
Merge branch 'custom-events'