Add event system (largely based on Bukkit) and menu interfaces