def include!(container)
      container_modules = container.singleton_class.included_modules

      # If the container is an EventContainer and we can include it, then do that
      include_events(container) if container_modules.include?(Discordrb::EventContainer) && respond_to?(:include_events)

      if container_modules.include? Discordrb::Commands::CommandContainer
        include_commands(container)
        include_buckets(container)
      elsif !container_modules.include? Discordrb::EventContainer
        raise "Could not include! this particular container - ancestors: #{container_modules}"
      end
    end
def include!(container)
      container_modules = container.singleton_class.included_modules

      # If the container is an EventContainer and we can include it, then do that
      include_events(container) if container_modules.include?(Discordrb::EventContainer) && respond_to?(:include_events)

      if container_modules.include? Discordrb::Commands::CommandContainer
        include_commands(container)
        include_buckets(container)
      elsif !container_modules.include? Discordrb::EventContainer
        raise "Could not include! this particular container - ancestors: #{container_modules}"
      end
    end
Includes another container into this one.
 @param container [Module] An EventContainer or CommandContainer that will be included if it can.