also abstract the rendering of a line item to separate class, so can override later etc.
Why not write a new POS system..? Heh surely a terrible idea, yet here we are.