Do not make tabs a new node and return the space invisible

The tabs are now rendered along with the rest of the line. This makes them play nice with right-to-left text. This caused me to rewrite how the tabs are sized as well as how the tab invisible was drawn. This new method of drawing the tab invisible lets spaces also be added as an invisible without affecting right-to-left text, so I added that back.