I think we should add the requirement that the API should be able to leverage the transport to the fullest, not shoehorning everything into the LCD. (You mention this at the end, but I think it fits the best here)