Router behaviour specification.
handler_id() :: term
message() :: any
handler_id(message) :: handler_id
handler_ids(message) :: [handler_id]
route(message) :: any