More communication functionality

Changed input to loop so it can handle more than a buffer's worth of
data.
Started adding more processing of input data in preparation for dispatch
to modem entities.
Started adding output path in preparation for communication with modem
entities.