Inherent transactions can only be inserted into a block by the block authoring node that calls them. Typically, this type of transaction is not gossiped to other nodes or stored in the transaction queue.
Since unsigned transactions (utx) and inherents are very similar (they are both unsigned), would it be technically possible to implement pallet_im_online
entirely in terms of inherents rather than utx? I.E. are there any hard barriers that prevents an inherent from being introduced into the transaction queue?